Subject: Kernel panics in 1.3.3 and -current on SS10 TMS390Z50
To: None <port-sparc@netbsd.org>
From: None <ak@e.nu>
List: port-sparc
Date: 01/26/1999 04:48:43
I tried installing the 1.3.3 and very latest snapshot on my
SPARCstation 10 and the kernel very very frequently crashes.
This may be due to the CPU TMS390Z50.
(a) dmesg
NetBSD 1.3I (WIND-DEBUG) #0: Tue Jan 26 02:16:58 JST 1999
cpu0 at mainbus0: TMS390Z50 v1 @ 40.300 MHz, on-chip FPU
cpu0: physical 20K instruction (64 b/l), 16K data (32 b/l), 1024K external (32 b/l): cache enabled
(snip)
(b) config-file
include "arch/sparc/conf/std.sparc"
maxusers 32
options SUN4M # sun4m - SS10, SS20, Classic, etc.
options RASTERCONSOLE # fast rasterop console
config netbsd root on ? type ?
options KTRACE
options SYSVMSG # System V message queues
options SYSVSEM # System V semaphores
options SYSVSHM # System V shared memory
options LKM
makeoptions DEBUG="-g"
options SCSIVERBOSE
options COMPAT_13 # NetBSD 1.3 binary compatibility
options COMPAT_SUNOS # SunOS 4.x binary compatibility
file-system FFS # Berkeley Fast Filesystem
file-system NFS # Sun NFS-compatible filesystem client
file-system NULLFS # NULL layered filesystem
file-system MFS # memory-based filesystem
file-system CD9660 # ISO 9660 + Rock Ridge file system
file-system UNION # union file system
options INET # IP (Internet Protocol) v4
options TCP_COMPAT_42 # 4.2BSD IP implementation compatibility
options NTP # Network Time Protocol in-kernel support
options PFIL_HOOKS # Add pfil(9) hooks, intended for custom LKMs.
options IPFILTER_LOG # Add ipmon(8) logging for ipfilter device
options PPP_BSDCOMP # Add BSD compression to ppp device
options PPP_DEFLATE # Add deflate (libz) compression to ppp device
options PPP_FILTER # Add active filters for ppp (via bpf)
mainbus0 at root
cpu0 at mainbus0
obio0 at mainbus0 # sun4 and sun4m
iommu0 at mainbus0 # sun4m
sbus0 at iommu0 # sun4m
auxreg0 at obio0 # sun4m
power0 at obio0
clock0 at obio0 # sun4m
memreg0 at obio0 # sun4m
eccmemctl0 at mainbus0 # sun4m
timer0 at obio0 # sun4m
zs0 at obio0 # sun4m
zstty0 at zs0 channel 0 # ttya
zstty1 at zs0 channel 1 # ttyb
zs1 at obio0 # sun4m
kbd0 at zs1 channel 0 # keyboard
ms0 at zs1 channel 1 # mouse
dma0 at sbus0 slot ? offset ? # sun4c/sun4m
esp0 at dma0 flags 0x0000 # sun4m
scsibus* at esp?
sd* at scsibus? target ? lun ? # SCSI disks
st* at scsibus? target ? lun ? # SCSI tapes
cd* at scsibus? target ? lun ? # SCSI CD-ROMs
fdc0 at obio0 # sun4m controller
fd* at fdc0 # the drive itself
pseudo-device vnd 4
pseudo-device ccd 4
ledma0 at sbus0 slot ? offset ? # sun4m on-board
le0 at ledma0 # sun4m on-board
le* at sbus? slot ? offset ? # SBus
ledma* at sbus? slot ? offset ? # SBus
le* at ledma? # SBus
lebuffer0 at sbus? slot ? offset ? # SBus
le0 at lebuffer? # SBus
lebuffer* at sbus? slot ? offset ? # SBus
le* at lebuffer? # SBus
pseudo-device loop
pseudo-device sl 2
pseudo-device ppp 2
pseudo-device tun 4
pseudo-device bpfilter 8
pseudo-device ipfilter
audioamd0 at sbus0 slot ? offset ? # sun4m
audio* at audioamd0
cgsix0 at sbus? slot ? offset ?
cgsix* at sbus? slot ? offset ?
pseudo-device pty 32 # pseudo-ttys (for network, etc.)
sd0 at scsibus? target 3 lun ? # first SCSI disk
sd1 at scsibus? target 1 lun ? # second SCSI disk
sd2 at scsibus? target 2 lun ? # third SCSI disk
sd3 at scsibus? target 0 lun ? # fourth SCSI disk
(c) gdb
GDB 4.16 (sparc--netbsd), Copyright 1996 Free Software Foundation, Inc...
(gdb) target kcore /var/crash/netbsd.0.core
panic: kernel fault
#0 mi_switch () at ../../../../kern/kern_synch.c:638
638 cpu_switch(p);
(gdb) where
#0 mi_switch () at ../../../../kern/kern_synch.c:638
#1 0xf002d94c in tsleep (ident=0x0, priority=4, wmesg=0xf00cdca0 "scheduler",
timo=0) at ../../../../kern/kern_synch.c:372
#2 0xf00cdd90 in uvm_scheduler () at ../../../../uvm/uvm_glue.c:440
#3 0xf001e3b8 in main () at ../../../../kern/init_main.c:444
(gdb) list
633 #if defined(UVM)
634 uvmexp.swtch++;
635 #else
636 cnt.v_swtch++;
637 #endif
638 cpu_switch(p);
639 microtime(&runtime);
640 }
641
642 /*
(gdb) up
#1 0xf002d94c in tsleep (ident=0x0, priority=4, wmesg=0xf00cdca0 "scheduler",
timo=0) at ../../../../kern/kern_synch.c:372
372 mi_switch();
(gdb) list
367 }
368 } else
369 sig = 0;
370 p->p_stat = SSLEEP;
371 p->p_stats->p_ru.ru_nvcsw++;
372 mi_switch();
373 #ifdef DDB
374 /* handy breakpoint location after process "wakes" */
375 asm(".globl bpendtsleep ; bpendtsleep:");
376 #endif
(gdb) up
#2 0xf00cdd90 in uvm_scheduler () at ../../../../uvm/uvm_glue.c:440
440 tsleep((caddr_t)&proc0, PVM, "scheduler", 0);
(gdb) list
435 #endif
436 /*
437 * Nothing to do, back to sleep
438 */
439 if ((p = pp) == NULL) {
440 tsleep((caddr_t)&proc0, PVM, "scheduler", 0);
441 goto loop;
442 }
443
444 /*
(gdb) up
#3 0xf001e3b8 in main () at ../../../../kern/init_main.c:444
444 uvm_scheduler();
(gdb) list
439 /* Create any other deferred kernel threads. */
440 kthread_run_deferred_queue();
441
442 /* The scheduler is an infinite loop. */
443 #if defined(UVM)
444 uvm_scheduler();
445 #else
446 scheduler();
447 #endif
448 /* NOTREACHED */
(gdb) info frame
(snip)
Has anyone else experienced these errors and knows how to fix them?
Any help would be appreciated. Thanks.