Subject: panic: kernel fault
To: None <port-sparc@NetBSD.ORG>
From: None <Havard.Eidnes@runit.sintef.no>
List: port-sparc
Date: 10/09/1997 16:00:10
Hi,

I am currently running the 19970907 Sparc snapshot GENERIC_SCSI3
kernel on a Sun SparcStation-10/30 (?).  I have tried building new
kernels on this host (sources 1 or 2 days old), but both my semi-
tailored kernel config and the GENERIC_SCSI3 kernel config fail to
produce a working kernel.  The new kernels both panic with

	data fault: pc=0xf000a634 addr=0xfe01c00c sfsr=3a6<FAV>
	panic: kernel fault

early in the boot process (before printing memory information).

The PC given above is the last instruction of ienab_bis_4m inside
locore.s:

(gdb) x/i ienab_bis_4m
0xf000a628 <ienab_bis_4m>:      sethi  %hi(0xfe01c000), %o1
(gdb) x/i
0xf000a62c <ienab_bis_4m+4>:    
    or  0xc, %o1, %o1   ! 0xfe01c00c <end+233439996>
(gdb) x/i
0xf000a630 <ienab_bis_4m+8>:    retl 
(gdb) x/i
0xf000a634 <ienab_bis_4m+12>:   st  %o0, [ %o1 ]
(gdb) 

(I assume the store instruction is in the retl instruction's delay
slot, right?)

0xfe01c00c is as far as I can see the ICR_SI_SET register, and
why storing into it produces a data fault is far beyond me; I don't
know much about low-level internals of the sparc systems, where this
error seems to come from.

The seconadry boot loader being used is the one shipping with the
snapshot, I think it presented itself as revision 1.7, by looking at
/boot it appears to be of the Sep 7, 1997 vintage.

Attached below is the "dmesg" output from the snapshot kernel.

Anyone have any idea what is going on here?  Should I submit this
as a PR?  If there is any more information needed I'd be happy to
supply it.


- Havard

------------------------------

Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 1.2G (GENERIC_SCSI3) #2: Tue Sep  9 02:01:27 CEST 1997
    pk@kwik:/usr/src/sys/arch/sparc/compile/GENERIC_SCSI3
real mem = 83152896
avail mem = 76525568
using 768 buffers containing 3145728 bytes of memory
bootpath: /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@3,0
mainbus0 (root): SUNW,SPARCstation-10
cpu0 at mainbus0: TMS390Z50 v1 @ 33 MHz, on-chip FPU
cpu0: physical 20K instruction (64 b/l), 16K data (32 b/l) cache enabled
obio0 at mainbus0
clock0 at obio0 addr 0xf1200000: mk48t08 (eeprom)
timer0 at obio0 addr 0xf1300000 delay constant 15
zs0 at obio0 addr 0xf1100000 pri 12, softpri 6
zs0a: console i/o
zs1 at obio0 addr 0xf1000000 pri 12, softpri 6
fdc0 at obio0 addr 0xf1700000 pri 11, softpri 4: chip 82077
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
auxreg0 at obio0 addr 0xf1800000
power0 at obio0 addr 0xf1a01000
iommu0 at mainbus0 ioaddr 0xe0000000: version 0x1/0x0, page-size 4096, range 64MB
sbus0 at iommu0: clock = 16.500 MHz
dma0 at sbus0 slot 15 offset 0x400000: rev 2
esp0 at dma0 slot 0xf offset 0x800000 pri 4: ESP200, 40MHz, SCSI ID 7
scsibus0 at esp0: 8 targets
probe(esp0:2:0): max sync rate 10.00Mb/s
sd2 at scsibus0 targ 2 lun 0: <SEAGATE, ST11200N, 8770> SCSI2 0/direct fixed
sd2: 1005MB, 1872 cyl, 15 head, 73 sec, 512 bytes/sect x 2059140 sectors
probe(esp0:3:0): max sync rate 10.00Mb/s
sd0 at scsibus0 targ 3 lun 0: <SEAGATE, ST11200N, 8770> SCSI2 0/direct fixed
sd0: 1005MB, 1872 cyl, 15 head, 73 sec, 512 bytes/sect x 2059140 sectors
ledma0 at sbus0 slot 15 offset 0x400010: rev 2
le0 at ledma0 slot 0xf offset 0xc00000 pri 6: address 08:00:20:12:0a:5c
le0: 8 receive buffers, 2 transmit buffers
SUNW,bpp at sbus0 slot 15 offset 0x4800000 not configured
SUNW,DBRIe at sbus0 slot 15 offset 0x8010000 not configured
root on sd0a dumps on sd0b
root file system type: ffs