Testing
Software
Test Bed
Miscellaneous
Blogs
|
|
|
The main goal has been to get
NetBSD
running on all three Sun boxes.
-
-
All these sun3 boxes can run headless and diskless, which is useful
for debugging and bootstrapping the box's configuration.
It was not difficult to netboot NetBSD -- here are the steps I used:
- use the
PROM monitor
to setup the box to use serial port A as the default console
- use the
PROM monitor
to setup the box to boot over the builtin ethernet by default
- setup
your server to provide the necessary services
- when creating the client file hierarchy, do not forget to populate
the /dev directory
- view the server's syslog and use tcpdump to debug your
configuration
-
-
I use a
68k Mac , running
NetBSD ,
to recompile the sun3 kernels. The Mac has more RAM/CPU, so why
not. The kernels appear to work and you avoid any cross-compilation
issues because they both use the same class of CPUs.
-
-
I got this box with the sun3/60. I always run this
box headless/diskless with NetBSD. I do not use this box often.
-
-
In the spring of 1996, I purchased this box with the
sun3/50:
- sun3/50 with 4MB RAM
- sun3/60 with 4MB RAM
- shoebox
external SCSI drive with SunOS installed -- no tape drive
- a fragile external 3ft DB50/DB50 SCSI ribbon cable
-
sun3 mouse, mouse pad, and keyboard
- bw monitor with cable
I quickly lost the root password and I
did not have all the right cables -- I used the cases and monitor
as a bed-side night table for years. I eventually restored the
box:
- cables
-
After some trips to the local computer recyclers, I acquired:
- a 10BaseT transceiver
- a real shielded external 3ft DB50/DB50 SCSI cable
- an external 2ft DB50/HD50 SCSI cable
- an external DB50 SCSI terminator
- twenty 1MB 9 chip SIMMs -- the
3 chip
SIMMs caused my sun3/60 to crash
- root password recovery
-
I netbooted the box with NetBSD and mounted
the SunOS partitions readonly, to examine etc/passwd.
I found this entry -- logging in as "fred" with no
password would give me root access again:
fred::0:0:Fred:/home/fred:/bin/sh
I wanted to save the shoebox, for a backup. So, I wanted
to reinstall SunOS on another SCSI disk:
- SCSI disks
-
First, I removed the SCSI terminator from
within the shoebox.
After, I installed three devices on the chain: the sun3/60, the
shoebox and the 1G SCSI disk.
The first SCSI disk I tried wouldn't boot from the PROM monitor --
I would get an error message instead:
scsi: getbyte failed
The problem disappeared after I exchanged SCSI disks. I also
disabled SCSI parity
on the disk, just to avoid the PROM blues.
I booted SunOS, off the shoebox, partitioned the 1G SCSI disk and
initialized the new partitions.
- SunOS 4.1.1 install
- I downloaded a copy of
SunOS 4.1.1.
Again, I booted of the shoebox and manually installed SunOS to the
empty 1G disk. I searched through various mailing lists to figure out
the installation instructions:
- using media
- remote install
- the method I used
After, I installed the various
U1
patches.
By default, this box boots SunOS from its local disk. When I want to
use NetBSD, I just netboot it. I plan to setup
another local SCSI disk
for booting NetBSD, as a future project.
-
-
In January of 2004, I found a Sun 3/160 tower at the local hardware
surplus. The tower does not appear to have the SCSI option and
I do not have any SMD disks. I have unable to get the 501-1153
NIC to work correctly with NetBSD.
- VME card cage config
-
Here is the 3/160 VME card cage config. These are the settings
that came with the tower -- I did not change them:
slot| part# | VME board desc | backplane jumpered
----+--------+-----------------------+-------------------
1 501-1208 SUN-3/160 3004 CPU 4MB 0 1 2
2 501-1132 4MB RAM 0 1 2 3 4
3 501-1132 4MB RAM 0 1 2 3 4
4 501-1132 4MB RAM 0 1 2 3 4
5 501-1153 NIC 2nd ie 0 1 2
6 501-1155 xylogics 472 tape ctrl 0 1 2
7 501-1166 xylogics 451 SMD ctrl 0 1 2
8 empty 0 1 2 3 4
9 empty 0 1 2 3 4
10 empty 0 1 2 3 4
11 empty 0 1 2 3 4
12 empty 0 1 2 3
The slot assignment appears to be okay. The
charts for the 3/160
say to use the
charts for the 3/180 with the 501-1138 or 501-1217 SCSI Host Adapter .
If still in doubt, I will pull the tape and SMD cards, because
I have no use for them. But for my initial testing, I wanted
to use the original configuration.
The 2nd NIC's Multibus to VME adapter settings match the
default settings
-- with an interrupt vector of 0x75.
- passed sundiag
-
I netbooted the box with SunOS 4.1.1_U1 and
ran sundiag. The tool run for 12 hours and things appeared
to work okay:
999.00.200.7001 02/07/104 22:09:40 keoland sundiag INFO: *Start Sundiag 2.0.2*
999.00.200.7004 02/07/104 22:10:08 keoland sundiag INFO: *Start all tests*
999.00.200.7005 02/08/104 10:25:25 keoland sundiag INFO: *Stop all tests*
------------------------------------------------------------------------------
| Sundiag 2.0.2 CPU:Sun-3/75, 3/160, 3/180 System status: testing |
|------------------------------------------------------------------------------|
| [NEXT] [DONE] [HELP] |
| System passes: 97 Total errors: 0 Elapsed time: 012:12:40 |
| |
| MEMORY DEVICE TESTS: |
| *(mem) pmem passes: 232 errors: 0 |
| *(kmem) vmem passes: 105 errors: 0 |
| CPU DEVICE TESTS: |
| *(68881) mc68881 passes: 97 errors: 0 |
| *(ie0) nettest passes: 104 errors: 0 |
| OTHER DEVICE TESTS: |
| (ie1) nettest passes: 105 errors: 0 |
| |
| |
| |
| ---------------------------------------------------------------------------- |
|| ||
|| ||
|| ||
|| ||
| ---------------------------------------------------------------------------- |
|------------------------------------------------------------------------------|
| Command: status |
| Message: |
------------------------------------------------------------------------------
- SunOS supports both interfaces
-
I was able to configure and benchmark both ie interfaces:
- from x86 netbsd server, on 1st network
-
$ ttcp -s -t -b 50000 -l 50000 -p 5001 keoland
- to sun3/160 running SunOS 4.1.1_U1 on ie0
-
# /usr/local/bin/ttcp -s -r -b 50000 -l 50000
ttcp-r: buflen=50000, nbuf=2048, align=16384/0, port=5001, sockbufsize=50000 tc
p
ttcp-r: socket
ttcp-r: rcvbuf
ttcp-r: accept from 192.168.1.201
ttcp-r: 102400000 bytes in 232.00 real seconds = 431.03 KB/sec +++
ttcp-r: 3861 I/O calls, msec/call = 61.53, calls/sec = 16.64
ttcp-r: 0.5user 77.4sys 3:52real 33%
- from a different x86 netbsd server, on 2nd network
-
$ ttcp -s -t -b 50000 -l 50000 -p 5001 10.0.0.11
- to sun3/160 running SunOS 4.1.1_U1 on ie1
-
# /usr/local/bin/ttcp -s -r -b 50000 -l 50000
ttcp-r: buflen=50000, nbuf=2048, align=16384/0, port=5001, sockbufsize=50000 tc
p
ttcp-r: socket
ttcp-r: rcvbuf
ttcp-r: accept from 10.0.0.12
ttcp-r: 102400000 bytes in 277.00 real seconds = 361.01 KB/sec +++
ttcp-r: 2067 I/O calls, msec/call = 137.23, calls/sec = 7.46
ttcp-r: 0.1user 85.2sys 4:37real 30%
- NetBSD will not boot with both NICs
-
When I boot the GENERIC 1.6.1 image, I get
RAM CONFIG FAILED! and
isr_vectored: vector=0x75 (not claimed) errors:
netboot: trying netbsd
1306108+180892 [115072+84625]=0x19be70
starting program at 0x4000
console is ttya
[ using 200152 bytes of netbsd ELF symbol table ]
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002
The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 1.6.1 (GENERIC) #0: Wed Apr 9 05:48:23 UTC 2003
autobuild@tgm.daemon.org:/autobuild/netbsd-1-6/sun3/OBJ/autobuild/netbsd-1-6/src/sys/arch/sun3/compile/GENERIC
Model: sun3 160
fpu: mc68881
total memory = 16384 KB
avail memory = 13456 KB
using 115 buffers containing 920 KB of memory
mainbus0 (root)
obio0 at mainbus0
zsc0 at obio0 addr 0x0 ipl 6: (softpri 3)
kbd0 at zsc0 channel 0: baud rate 1200
ms0 at zsc0 channel 1: baud rate 1200
zsc1 at obio0 addr 0x20000 ipl 6: (softpri 3)
zstty0 at zsc1 channel 0 (console i/o)
zstty1 at zsc1 channel 1
eeprom0 at obio0 addr 0x40000
clock0 at obio0 addr 0x60000 ipl 5
memerr0 at obio0 addr 0x80000 ipl 7: (ECC memory)
intreg0 at obio0 addr 0xa0000
ie0 at obio0 addr 0xc0000 ipl 3: macaddr 08:00:20:01:56:a1
obmem0 at mainbus0
bwtwo0 at obmem0 addr 0xff000000 (1152x900)
vme0 at mainbus0: (A16/D16)
xyc0 at vme0 addr 0xee40 ipl 2 vect 0x48: Xylogics 450/451
xy0 at xyc0 drive 0
xy0: drive 0: off-line
xy1 at xyc0 drive 1
xy1: drive 1: off-line
vme1 at mainbus0: (A16/D32)
vme2 at mainbus0: (A24/D16)
ie1 at vme2 addr 0xe88000 ipl 3 vect 0x75: macaddr 08:00:20:01:56:a1
: RAM CONFIG FAILED!
vme3 at mainbus0: (A24/D32)
vme4 at mainbus0: (A32/D16)
vme5 at mainbus0: (A32/D32)
enabling interrupts
isr_vectored: vector=0x75 (not claimed)
isr_vectored: vector=0x75 (not claimed)
isr_vectored: vector=0x75 (not claimed)
[... this line repeats forever ...]
isr_vectored: vector=0x75 (not claimed)
Stopped in pid 0 (swapper) at cpu_Debugger+0x6: unlk a6
db> trace
cpu_Debugger(9,e20c000,e15dee0,e1a3ea0,e11181a) + 6
zs_abort(0) + 26
zstty_stint(e20c134,0) + 7e
zsc_intr_hard(e20c100) + 58
zshard(0) + 2a
isr_autovec(2700,78,e10731a,28,23100e06) + 6c
_isr_autovec(?)
printf(e133945,75,2000,e1a3f5c,e0044b6) + 4
isr_vectored(2700,20,fe0a000,14,20000e10) + 84
_isr_vectored(?)
cpu_initclocks(d,e1a3f74,e06ae60,e05ca1c,e1a3fa4) + 4
initclocks(e05ca1c,e1a3fa4,e05b7d4,1000000,0) + e
configure(1000000,0,0,ffff,1) + 36
main(e1a3fb0) + 3ba
db>
- NetBSD will boot with one NIC but
-
I removed the 2nd NIC in slot 5 and installed jumpers 0-5.
I netbooted the box with SunOS and
ran sundiag to verify the new VME configuration:
999.00.200.7001 02/07/104 07:56:26 keoland sundiag INFO: *Start Sundiag 2.0.2*
999.00.200.7004 02/07/104 07:56:51 keoland sundiag INFO: *Start all tests*
999.00.200.7005 02/07/104 20:19:12 keoland sundiag INFO: *Stop all tests*
------------------------------------------------------------------------------
| Sundiag 2.0.2 CPU:Sun-3/75, 3/160, 3/180 System status: testing |
|------------------------------------------------------------------------------|
| [NEXT] [DONE] [HELP] |
| System passes: 96 Total errors: 0 Elapsed time: 012:11:33 |
| |
| MEMORY DEVICE TESTS: |
| *(mem) pmem passes: 230 errors: 0 |
| *(kmem) vmem passes: 105 errors: 0 |
| CPU DEVICE TESTS: |
| *(68881) mc68881 passes: 96 errors: 0 |
| *(ie0) nettest passes: 134 errors: 0 |
| |
| |
| ---------------------------------------------------------------------------- |
|| ||
|| ||
|| ||
|| ||
| ---------------------------------------------------------------------------- |
|------------------------------------------------------------------------------|
| Command: status |
| Message: |
------------------------------------------------------------------------------
This time, the GENERIC 1.6.1 NetBSD image booted, but you get
NIC problems when you try to benchmark the only interface:
- from x86 netbsd server, on 1st network
-
$ ttcp -s -t -b 50000 -l 50000 -p 5001 keoland
- to sun3/160 running NetBSD ie0
-
# /usr/local/bin/ttcp -s -r -b 50000 -l 50000
ttcp-r: buflen=50000, nbuf=2048, align=16384/0, port=5001, sockbufsize=50000 tcp
ttcp-r: socket
ttcp-r: rcvbuf
ttcp-r: accept from 192.168.1.201
ie0: interrupt stuck?
ie0: abort commands timed out
ie0: disable commands timed out
ie0: configure command failed
ie0: interrupt stuck?
ie0: abort commands timed out
topped in pid 33 (ttcp) at cpu_Debugger+0x6: unlk a6
db> trace
cpu_Debugger(9,e20c000,e15dee0,f99dd64,e11181a) + 6
zs_abort(0) + 26
zstty_stint(e20c134,0) + 7e
zsc_intr_hard(e20c100) + 58
zshard(0) + 2a
isr_autovec(2700,78,e10731a,20,23000e06) + 6c
_isr_autovec(?)
printf(e136dc6,e22c014) + 4
iereset(e22c000,0,e20fec0,e215200,f99de28) + 6a
ie_intr(e22c000) + fc
isr_autovec(2400,58,e246188,1,21000e07) + 6c
_isr_autovec(e2423f0,0,f99deec,0,0) + 4
soo_read(f9940a8,f9940d0,f99deec,e219e00,1) + 1e
dofileread(f153220,4,f9940a8,c000,c350) + 8a
sys_read(f153220,f99df84,f99df7c) + 4a
syscall(3) + 154
trap0() + e
- the future
-
-
-
I acquired some more hardware for the sun3 testbed. I should
have enough to get the 3/60 and 3/160 booting SunOS and
NetBSD 2.0 off hard drives:
- external 6ft DB50/HD50 SCSI cable
- 501-1217 SCSI card
- DEC BA360 enclosure with three RZ28 SCSI hard drives
- Install OSes to DEC RZ28
-
I decided I would use three RZ28 SCSI hard drives -- each
with a different operating system. These drives appear to
have 4110480 sectors, but I had to use less to get things
to work okay. These drives will be shared between the
3/60 and 3/160 systems.
- SunOS 4.1.1_U1
-
- only used 2040192 sectors
- netbooted SunOS
- ran format and newfs to setup the drive
- run dump (I already had a disk with 4.1.1 on it) and
restore to install SunOS on the RZ28
- ran installboot to setup the boot block
- NetBSD 1.6.1
-
- only used 4089792 sectors
- netbooted NetBSD 1.6.1
- ran disklabel to setup the drive
- copied the miniroot to the swap partition
- booted off the swap partition and followed the
installation instructions
- NetBSD 2.0
-
When I tried to upgrade to 2.0, I would get a
crash --
si_dma_alloc: excessive xlen=0x10000.
Recompiling the kernel with the
MAXPHYS fix
appeared to solve the problem.
- made a copy of the NetBSD 1.6.1 RZ28 drive
- netbooted NetBSD 1.6.1
- copied my new miniroot to the swap partition
- booted off the swap partition and followed the
installation and upgrade instructions
- SCSI cables
-
The 6ft DB50/HD50 SCSI cable does not work with the 3/60.
But both the 3/6 ft DB50/HD50 SCSI cables work okay with
the 3/160. Maybe something is not quite standard with
the 3/60 SCSI hardware.
- 3/160 and the 501-1208 and 501-1153 82586 Ethernet NICs
-
I could not reproduce the 501-1208 NIC issues -- with either
1.6.1 or 2.0. But I did see a new symptom during
some 1.6.1 TCP benchmarks --
ie0: receive descriptors out of sync at 14.
I can still reproduce the 501-1153 NIC issues -- again this
card appears to work okay with SunOS.
Here is the current VME card cage config:
slot| part# | VME board desc | backplane jumpered
----+--------+-----------------------+-------------------
1 501-1208 SUN-3/160 3004 CPU 4MB 0 1 2
2 501-1132 4MB RAM 0 1 2 3 4
3 501-1132 4MB RAM 0 1 2 3 4
4 501-1132 4MB RAM 0 1 2 3 4
5 empty 0 1 2 3 4
6 501-1217 SCSI disk ctrl 0 1 2
7 501-1155 xylogics 472 tape ctrl 0 1 2
8 empty 0 1 2 3 4
9 empty 0 1 2 3 4
10 empty 0 1 2 3 4
11 empty 0 1 2 3 4
12 empty 0 1 2 3
|
|
|