Subject: more !smooth 4/110 adventures
To: None <port-sparc@NetBSD.ORG>
From: Rob Windsor <windsor@pobox.com>
List: port-sparc
Date: 07/03/1996 01:32:33
Heyyo,

The last time you tuned in, we were having fun with getting a drive
partitioned so that I could shed the abysmal NFS performance.

Well,

Now, it hangs upon bootup.  During bootup off of the drive, it (the kernel)
detects vmel0 and vmes0 and stops.  Normally, it should be mounting root
at this point.

I compiled in a kernel using DIAGNOSTIC, DDB, and DEBUG, and booting it up
gives me:

[...standard kernel messages...]

vmel0 at mainbus0
vmes0 at mainbus0
Process (pid 1) got signal 11
Process (pid 1) got signal 11
Process (pid 1) got signal 11

[...repeat, 9600baud...]


/usr/include/sys/signal.h shows 11 as:

#define SIGSEGV 11      /* segmentation violation */

Anyone know what's going on here, and what the fix is?

I can consistently boot just fine over the wire, but never off of the drive.

Some machine properties:

20M, jumpers for mem set properly (passes full diag test)
one drive, set to scsi id 0 (prom likes it there, calls it sd(0,0,0))
prom -will not- boot off of the drive if it is set to scsi id 3
serial console, p4-bwtwo on system board but not used.
fully populated /dev (checked and verified twice)

dmesg from last successful netboot:
Jul  3 00:05:56 beast /netbsd: real mem = 20914176
Jul  3 00:05:56 beast /netbsd: avail mem = 18415616
Jul  3 00:05:56 beast /netbsd: using 127 buffers containing 1040384 bytes of memory
Jul  3 00:05:56 beast /netbsd: bootpath: /obio0/ie0
Jul  3 00:05:56 beast /netbsd: mainbus0 (root)cpu0 at mainbus0: SUN-4/100 series (MB86910 or WTL1164/5 FPU)
Jul  3 00:05:56 beast /netbsd: obio0 at mainbus0
Jul  3 00:05:56 beast /netbsd: oclock0 at obio0 addr 0x3000000 delay constant 4
Jul  3 00:05:56 beast /netbsd: eeprom0 at obio0 addr 0x2000000
Jul  3 00:05:56 beast /netbsd: memreg0 at obio0 addr 0x4000000
Jul  3 00:05:56 beast /netbsd: zs0 at obio0 addr 0x1000000 pri 12, softpri 6
Jul  3 00:05:56 beast /netbsd: zs0a: console i/o
Jul  3 00:05:56 beast /netbsd: zs1 at obio0 addr 0x0 pri 12, softpri 6
Jul  3 00:05:56 beast /netbsd: bwtwo0 at obio0 addr 0xb300000: bwtwo/p4, 1152 x 900
Jul  3 00:05:56 beast /netbsd: bwtwo0: attached to /dev/fb
Jul  3 00:05:56 beast /netbsd: ie0 at obio0 addr 0x6000000 pri 6 address 08:00:20:06:26:53, type onboard
Jul  3 00:05:56 beast /netbsd: sw0 at obio0 addr 0xa000000 pri 3
Jul  3 00:05:56 beast /netbsd: sw0: options=1<DMA>
Jul  3 00:05:56 beast /netbsd: scsibus0 at sw0
Jul  3 00:05:56 beast /netbsd: sd0 at scsibus0 targ 3 lun 0: <CDC, 94191-15, 0136> SCSI1 0/direct fixed
Jul  3 00:05:56 beast /netbsd: sd0: 643MB, 1632 cyl, 15 head, 53 sec, 512 bytes/sec
Jul  3 00:05:56 beast /netbsd: vmel0 at mainbus0
Jul  3 00:05:56 beast /netbsd: vmes0 at mainbus0
Jul  3 00:05:56 beast /netbsd: nfs_boot: using network interface 'ie0'
Jul  3 00:05:56 beast /netbsd: ie0: TDR detected a short 0 clocks away
Jul  3 00:05:56 beast /netbsd: nfs_boot: client_addr=0xce562919
Jul  3 00:05:56 beast /netbsd: nfs_boot: server_addr=0xfoo
Jul  3 00:05:56 beast /netbsd: nfs_boot: hostname=beast
Jul  3 00:05:56 beast /netbsd: root on server:/export/beast/root
Jul  3 00:05:56 beast /netbsd: swap on server:/export/beast/swap


kernel conf file:
# BEAST -- Rob's 4/110

machine		sparc
options		SUN4		# sun4/100, sun4/200, sun4/300

#options	MMU_3L		# 3-level MMU on sun4/400

# obsolete timezone spec; optional
options		TIMEZONE=480, DST=1
maxusers	32

# Standard system options
options		SWAPPAGER	# swap and anonymous memory; required
options		VNODEPAGER	# mapped files; required
options		DEVPAGER	# mapped devices; required
options		KTRACE		# system call tracing
options		SYSVMSG		# System V message queues
options		SYSVSEM		# System V semaphores
options		SYSVSHM		# System V shared memory
#options	SHMMAXPGS=1024	# 1024 pages is the default
options		LKM		# loadable kernel modules
#options	INSECURE	# disable kernel security level
#options	UCONSOLE	# allow anyone to steal the virtual console

# Debugging options
options		DDB		# kernel dynamic debugger
options		DEBUG		# kernel debugging code
options		DIAGNOSTIC	# extra kernel sanity checking
#options	KGDB		# support for kernel gdb
#options	KGDBDEV=0xc01	# kgdb device number (dev_t)
#options	KGDBRATE=38400	# baud rate

# Compatibility options
options		COMPAT_43	# 4.3BSD system interfaces
options		COMPAT_10	# NetBSD 1.0 binary compatibility
options		COMPAT_11	# NetBSD 1.1 binary compatibility
options		COMPAT_SUNOS	# SunOS 4.x binary compatibility
options		COMPAT_SVR4	# SunOS 5.x binary compatibility

# Filesystem options
options		FFS		# Berkeley Fast Filesystem
options		QUOTA		# FFS quotas
options		NFSSERVER	# Sun NFS-compatible filesystem server
options		NFSCLIENT	# Sun NFS-compatible filesystem client
#options	KERNFS		# kernel data-structure filesystem
options		NULLFS		# NULL layered filesystem
options		MFS		# memory-based filesystem
options		FDESC		# user file descriptor filesystem
#options	UMAPFS		# uid/gid remapping filesystem
#options	LFS		# Log-based filesystem (still experimental)
#options	PORTAL		# portal filesystem (still experimental)
#options	PROCFS		# /proc
options		CD9660		# ISO 9660 + Rock Ridge file system
options		UNION		# union file system
options		FIFO		# POSIX fifo support (in all filesystems)

# Networking options
options		INET		# IP stack
#options	TCP_COMPAT_42	# compatibility with 4.2BSD TCP/IP
#options	GATEWAY		# IP packet forwarding
#options	ISO,TPIP	# OSI networking
#options	EON		# OSI tunneling over IP
#options	CCITT,LLC,HDLC	# X.25

# Options for SPARCstation hardware
#options	RASTERCONSOLE	# fast rasterop console

# Generic swap; second partition of root disk or network.
config		netbsd root on sd0 swap on sd0

# Main bus and CPU .. all systems.
mainbus0 at root
cpu0	at mainbus0

# Bus types found on SPARC systems.
#sbus0	at mainbus0				# sun4c
obio0	at mainbus0				# sun4 and sun4m
vmes0	at mainbus0				# sun4
vmel0	at mainbus0				# sun4
#iommu0	at mainbus0				# sun4m
#sbus0	at iommu0				# sun4m

#audio0	at mainbus0				# sun4c
#audio0	at obio0				# sun4m

#auxreg0	at mainbus0				# sun4c
#auxreg0	at obio0				# sun4m

# Power status and control register found on Sun4m systems
#power0	at obio0

# Mostek clock found on 4/300, sun4c, and sun4m systems.
# The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
#clock0	at mainbus0				# sun4c
#clock0	at obio0				# sun4m
#clock0	at obio0 addr 0xf2000000		# sun4/300

# Intersil clock found on 4/100 and 4/200 systems.
#oclock0	at obio0 addr 0xf3000000		# sun4/200
oclock0	at obio0 addr 0x03000000		# sun4/100

# Memory error registers.
#memreg0	at mainbus0				# sun4c
#memreg0	at obio0				# sun4m
#memreg0	at obio0 addr 0xf4000000		# sun4/200 and sun4/300
memreg0	at obio0 addr 0x04000000		# sun4/100

# Timer chip found on 4/300, sun4c, and sun4m systems.
#timer0	at mainbus0				# sun4c
#timer0	at obio0				# sun4m
#timer0	at obio0 addr 0xef000000		# sun4/300

# EEPROM found on 4/100 and 4/200 systems.  Note that the 4/300
# doesn't use this driver; the `EEPROM' is in the NVRAM on the
# Mostek clock chip on 4/300 systems.
#eeprom0	at obio0 addr 0xf2000000		# sun4/200
eeprom0	at obio0 addr 0x02000000		# sun4/100

# Zilog 8530 serial chips.  Each has two-channels.
# zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
#zs0	at mainbus0					# sun4c
#zs0	at obio0					# sun4m
#zs0	at obio0 addr 0xf1000000 level 12 flags 0x103	# sun4/200 and sun4/300
zs0	at obio0 addr 0x01000000 level 12 flags 0x103	# sun4/100
#zs1	at mainbus0					# sun4c
#zs1	at obio0					# sun4m
#zs1	at obio0 addr 0xf0000000 level 12 flags 0x103	# sun4/200 and sun4/300
zs1	at obio0 addr 0x00000000 level 12 flags 0x103	# sun4/100
#zs2	at obio0 addr 0xe0000000 level 12 flags 0x103	# sun4/300

#
# Note the flags on the esp entries below, that work around
# deficiencies in the current driver:
#	bits 0-7:  disable disconnect/reselect for the corresponding target
#	bits 8-15: disable synch negotiation for target [bit-8]
#

# sun4/300 SCSI - an NCR53c94 or equivalent behind
# an LSI Logic DMA controller
#dma0	at obio0 addr 0xfa001000 level 4		# sun4/300
#esp0	at obio0 addr 0xfa000000 level 4 flags 0xffff	#

# sun4c or sun4m SCSI - an NCR53c94 or equivalent behind
# specialized DMA glue
#dma0	at sbus0 slot ? offset ?			# on-board SCSI
#esp0	at sbus0 slot ? offset ? flags 0xffff		# sun4c
#esp0	at dma0 flags 0xffff				# sun4m

# FSBE/S SCSI - an NCR53c94 or equivalent behind
#dma*	at sbus? slot ? offset ?			# SBus SCSI
#esp*	at sbus? slot ? offset ? flags 0xffff		# two flavours
#esp*	at dma? flags 0xffff				# depending on model

# sun4m Ethernet - an AMD 7990 LANCE behind
# specialized DMA glue
#ledma0	at sbus0 slot ? offset ?			# sun4m on-board
#le0	at ledma0					#

# Additional SBus LANCE devices - glued on by lebuffer (not yet implemented)
#lebuffer*	at sbus0 slot ? offset ?		# sun4m SBus
#le*	at lebuffer?					#

# sun4/300 and sun4c Ethernet - an AMD 7990 LANCE
#le0	at sbus0 slot ? offset ?			# sun4c on-board
#le*	at sbus? slot ? offset ?

#le0	at obio0 addr 0xf9000000 level 6		# sun4/300

# sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board
# or on a Multibus/VME card.
#ie0	at obio0 addr 0xf6000000 level 6		# sun4/200 on-board
ie0	at obio0 addr 0x06000000 level 6		# sun4/100 on-board

#ie1	at vmes0 addr 0xffe88000 level 5 vect 0x75
#ie2	at vmes0 addr 0xff31ff02 level 5 vect 0x76
#ie3	at vmes0 addr 0xff35ff02 level 5 vect 0x77
#ie4	at vmes0 addr 0xff2dff02 level 5 vect 0x7c

# Xylogics 753 or 7053 VME SMD disk controllers and disks, found
# on sun4 systems.
#xdc0	at vmel0 addr 0xffffee80 level 3 vect 0x44
#xdc1	at vmel0 addr 0xffffee90 level 3 vect 0x45
#xdc2	at vmel0 addr 0xffffeea0 level 3 vect 0x46
#xdc3	at vmel0 addr 0xffffeeb0 level 3 vect 0x47
#xd*	at xdc? drive ?

# Xylogics 451 or 451 VME SMD disk controllers and disks, found
# on sun4 systems.
#xyc0	at vmes0 addr 0xffffee40 level 3 vect 0x48
#xyc1	at vmes0 addr 0xffffee48 level 3 vect 0x49
#xy*	at xyc? drive ?

# NCR5380-based "Sun SCSI 3" VME SCSI controller.
# This driver has several flags which may be enabled by OR'ing
# the values and using the "flags" directive.
# Valid flags are:
#
#	0x01		Use DMA (may be polled)
#	0x02		Use DMA completion interrupts
#	0x04		Allow disconnect/reselect
#
# E.g. the following would enable DMA, interrupts, and reselect:
# si0	at vmes0 addr 0xff200000 level 3 vect 0x40 flags 0x07
#
# By default, DMA is enabled in the driver.
#si0	at vmes0 addr 0xff200000 level 3 vect 0x40

# NCR5380-based "SCSI Weird" on-board SCSI interface found
# on sun4/100 systems.  The flags are the same as the "si"
# controller.  Note, while DMA is enabled by default, only
# polled DMA works at this time, and reselects do not work
# on this particular controller.
sw0	at obio0 addr 0x0a000000 level 3

# Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
# systems.  If your sun4 system has a cgfour installed in the P4 slot,
# the P4 entries for "bwtwo" will attach to the overlay plane of the
# "cgfour".
#bwtwo0	at sbus0 slot ? offset ?		# sun4c on-board
#bwtwo*	at sbus? slot ? offset ?		# sun4c and sun4m
#bwtwo0	at obio0 addr 0xfd000000 level 4	# sun4/200
#bwtwo0	at obio0 addr 0xfb300000 level 4	# sun4/300 in P4 slot
bwtwo0	at obio0 addr 0x0b300000 level 4	# sun4/100 in P4 slot

# Sun "cgtwo" VME color framebuffer
#cgtwo0	at vmes0 addr 0xff400000 level 4 vect 0xa8

# Sun "cgthree" Sbus color framebuffer
#cgthree0 at sbus? slot ? offset ?
#cgthree* at sbus? slot ? offset ?
#cgthree0 at obio? slot ? offset ?		# sun4m
#cgthree* at obio? slot ? offset ?		# sun4m

# Sun "cgfour" color framebuffer with overlay plane.  See above comment
# regarding overlay plane.
#cgfour0	at obio0 addr 0xfb300000 level 4	# sun4/300 P4
cgfour0	at obio0 addr 0x0b300000 level 4	# sun4/100 P4

# Sun "cgsix" accelerated color framebuffer.
#cgsix0	at sbus? slot ? offset ?
#cgsix*	at sbus? slot ? offset ?
#cgsix0	at obio0 addr 0xfb000000 level 4	# sun4/300 P4
cgsix0	at obio0 addr 0x0b000000 level 4	# sun4/100 P4

# Sun "cgeight" 24-bit framebuffer
#cgeight0 at obio0 addr 0xfb300000 level 4	# sun4/300 P4
cgeight0 at obio0 addr 0x0b300000 level 4	# sun4/100 P4

# SCSI bus layer.  SCSI devices attach to the SCSI bus, which attaches
# to the underlying hardware controller.
#scsibus* at esp?
#scsibus* at si?
scsibus* at sw?

# These entries find devices on all SCSI busses and assign
# unit numers dynamically.
sd*	at scsibus? target ? lun ?		# SCSI disks
st*	at scsibus? target ? lun ?		# SCSI tapes
cd*	at scsibus? target ? lun ?		# SCSI CD-ROMs
ch*	at scsibus? target ? lun ?		# SCSI changer devices

# Floppy controller and drive found on SPARCstations.
#fdc0	at mainbus0				# sun4c controller
#fdc0	at obio0				# sun4m controller
#fd*	at fdc0					# the drive itself

pseudo-device	loop		# loopback interface; required
pseudo-device	pty	32	# pseudo-ttys (for network, etc.)
pseudo-device	sl	2	# SLIP interfaces
pseudo-device	kbd		# Sun keyboard
pseudo-device	ppp	2	# PPP interfaces
pseudo-device	tun	4	# Network "tunnel" device
pseudo-device	bpfilter 16	# Berkeley Packet Filter
pseudo-device	vnd	4	# disk-like interface to files
pseudo-device	ccd	4	# concatenated and striped disks
#pseudo-device	strip	1	# radio clock

Thanks for your time (in advance).

-- Rob
----------------------------------------
Internet: windsor@pobox.com      Life: Rob@Sunnyvale.California.USA.Earth
"Da Web": http://pobox.com/~windsor/

"Ain't much distance 'tween a pat on the back and a kick in the pants."
    -- David Lee Roth (1990), `The Dogtown Shuffle'