Bridlewood Software Testers Guild


Testing
 Tools
 Problem Reports
 Techniques

Software
 VAX patches
 SIMH scripts

Test Bed
 Micro PDP 11/23
 Micro PDP 11/53
 Micro VAX
 SIMH VAX 11/780
 
 free stuff
 terminals
 cabinets

Miscellaneous
 Apiary Tour
 Vegetarian Recipes

Blogs
 ba23.org
 kirk
 all

Sun3

The main goal has been to get NetBSD running on all three Sun boxes.

sun3/50 image

headless and diskless setup

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

kernel compilation

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.

Sun 3/50

I got this box with the sun3/60. I always run this box headless/diskless with NetBSD. I do not use this box often.

  • my neighbour had a spare MC68881 FPU, so I did not require the kernel to do floating point emulation
  • build a smaller kernel to work within 4MB of RAM -- here is a config file for NetBSD 1.5.2:
    include "arch/sun3/conf/std.sun3"
    maxusers	4
    options 	COMPAT_SUNOS	# can run SunOS 4.1.1 executables
    options 	COMPAT_43	# and 4.3BSD and ...
    file-system	NFS		# Sun NFS client support
    options 	INET		# IP prototol stack support
    options 	NFS_BOOT_RWSIZE=1024
    options 	NFS_BOOT_BOOTPARAM
    config		netbsd root on ? type nfs
    include "arch/sun3/conf/obio.sun3"
    obmem0 at mainbus?
    zstty0	at zsc1 channel 0	# ttya
    zstty1	at zsc1 channel 1	# ttyb
    kbd0	at zsc0 channel 0	# keyboard
    ms0	at zsc0 channel 1	# mouse
    le0 at obio0 addr 0x120000 ipl 3
    options 	LANCE_REVC_BUG
    include "arch/sun3/conf/bw2.sun3"
    include "arch/sun3/conf/cg4.sun3"
    pseudo-device	loop		1	# network loopback
    pseudo-device	bpfilter	8	# packet filter
    pseudo-device	pty		8	# pseudo-terminals
    

Sun 3/60

In the spring of 1996, I purchased this box with the sun3/50:

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:
  1. using media
  2. remote install
  3. 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.

Sun 3/160

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

SCSI upgrade

sun3/160 front image sun3/160 back image

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

Ads by PARSE

Irish Vax Wanted!

Are you looking for a good home for your Irish Vax or PDP11?

Old PDP Computers?

Are you looking for a good home for your old PDP8 computer?



www.ba23.org     web                

(Contact me) This page was updated on 2007/06/02. View Kirk Russell's profile on LinkedIn Copyright © 2004 2005 Kirk J. Russell
ALL RIGHTS RESERVED.