NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/45137: Kernel assertion in userret.h
The following reply was made to PR kern/45137; it has been noted by GNATS.
From: Hauke Fath <hauke%Espresso.Rhein-Neckar.DE@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: kern-bug-people%NetBSD.org@localhost, gnats-admin%NetBSD.org@localhost,
David Holland <dholland-bugs%netbsd.org@localhost>
Subject: Re: kern/45137: Kernel assertion in userret.h
Date: Sun, 17 Jul 2011 21:52:49 +0200
At 3:35 Uhr +0000 17.7.2011, David Holland wrote:
> On Tue, Jul 12, 2011 at 08:00:01AM +0000, Hauke Fath wrote:
> > Starting timed.
> > panic: kernel diagnostic assertion "l->l_nopreempt == 0" failed: file
>"/public/netbsd-developer/sys/sys/userret.h", line 118
>
> Is this caused by timed? That is, is it one of the time-related
> syscalls (which are not exercised that much) that's leaking nopreempt?
>
> Either way if you can figure out which syscall it's in when it dies,
> that'll make it a lot easier to trace what broke.
Thanks for looking at this.
I got the trace below (long) three days ago from a 5_99_55 kernel which got
stuck instead of rebooting, and required a break. The message and the ps
list after the break show ntpd active. Might be an interaction between ntpd
and timed (which serves the local machines); I'll boot with timed disabled
next time.
HTH,
hauke
<snip>
[2011-07-14]
Resetting ...
SPIF/stc FCode initialization complete
SPARCstation 20 MP (2 X SuperSPARC-II), No Keyboard
ROM Rev. 2.25, 480 MB memory installed, Serial #7491233.
Ethernet address 8:0:20:72:4e:a1, Host ID: 72724ea1.
Rebooting with command: netbsd.new
Boot device: /iommu/sbus/SUNW,fas/sd@0,0 File and args: netbsd.new
>> NetBSD/sparc Secondary Boot, Revision 1.15
>> (hf@Hochstuhl, Thu Aug 16 18:49:16 CEST 2007)
Booting netbsd.new
3461500+138908 [200368+188787]=0x3ce430
OBP version 3, revision 2.25 (plugin rev 2)
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009, 2010, 2011
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 5.99.55 (PIZZA_PF) #0: Thu Jul 14 17:14:00 CEST 2011
hf@Hochstuhl:/var/obj/netbsd-builds/developer/sparc/sys/arch/sparc/compile/PIZZA
_PF
total memory = 479 MB
avail memory = 465 MB
bootpath: /iommu@f,e0000000/sbus@f,e0001000/SUNW,fas@1,8800000/sd@0,0
mainbus has not been converted to device_t
mainbus0 (root): SUNW,SPARCstation-20: hostid 72724ea1
cpu has not been converted to device_t
cpu0 at mainbus0: mid 8: TMS390Z50 v0 or TMS390Z55 @ 75 MHz, on-chip FPU
cpu0: physical 20K instruction (64 b/l), 16K data (32 b/l), 1024K external
(32 b/l): cache enabled
cpu has not been converted to device_t
cpu1 at mainbus0: mid 10: TMS390Z50 v0 or TMS390Z55 @ 75 MHz, on-chip FPU
cpu1: physical 20K instruction (64 b/l), 16K data (32 b/l), 1024K external
(32 b/l): cache enabled
obio0 at mainbus0
clock0 at obio0 slot 0 offset 0x200000: mk48t08
timer has not been converted to device_t
timer0 at obio0 slot 0 offset 0x300000: delay constant 35, frequency =
2000000 Hz
zs0 at obio0 slot 0 offset 0x100000 level 12 softpri 6
zstty0 at zs0 channel 0 (console i/o)
zstty1 at zs0 channel 1
zs1 at obio0 slot 0 offset 0x0 level 12 softpri 6
zstty2 at zs1 channel 0
zstty3 at zs1 channel 1
fdc has not been converted to device_t
fdc0 at obio0 slot 0 offset 0x700000 level 11: no drives attached
auxreg has not been converted to device_t
auxreg0 at obio0 slot 0 offset 0x800000
power has not been converted to device_t
power0 at obio0 slot 0 offset 0xa01000 level 2
iommu has not been converted to device_t
iommu0 at mainbus0 ioaddr 0xe0000000: version 0x3/0x1, page-size 4096,
range 64MB
sbus0 at iommu0: clock = 25 MHz
dma0 at sbus0 slot 15 offset 0x400000: DMA rev 2
esp0 at dma0 slot 15 offset 0x800000 level 4: ESP200, 40MHz, SCSI ID 7
scsibus0 at esp0: 8 targets, 8 luns per target
ledma0 at sbus0 slot 15 offset 0x400010: DMA rev 2
le0 at ledma0 slot 15 offset 0xc00000 level 6: address 08:00:20:72:4e:a1
le0: 8 receive buffers, 2 transmit buffers
SUNW,bpp at sbus0 slot 15 offset 0x4800000 level 2 (ipl 3) not configured
SUNW,DBRIe at sbus0 slot 14 offset 0x10000 level 9 not configured
spif has not been converted to device_t
spif0 at sbus0 slot 0 offset 0x0 level 13 level 7: rev 5 chiprev 82 osc
9.830MHz
stty has not been converted to device_t
stty0 at spif0: 8 ttys
hme0 at sbus0 slot 1 offset 0x8c00000 level 4 (ipl 7): Sun Happy Meal
Ethernet (SUNW,hme)
hme0: Ethernet address 08:00:20:72:4e:a1
nsphy0 at hme0 phy 1: DP83840 10/100 media interface, rev. 0
nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
esp1 at sbus0 slot 1 offset 0x8800000 level 3 (ipl 5): FAS366/HME, 40MHz,
SCSI ID 7
scsibus1 at esp1: 16 targets, 8 luns per target
hme1 at sbus0 slot 2 offset 0x8c00000 level 4 (ipl 7): Sun Happy Meal
Ethernet (SUNW,qfe)
hme1: Ethernet address 08:00:20:72:4e:a1
ukphy0 at hme1 phy 1: QS6612 10/100 media interface (OUI 0x00068a, model
0x0000), rev. 1
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
hme2 at sbus0 slot 2 offset 0x8c10000 level 4 (ipl 7): Sun Happy Meal
Ethernet (SUNW,qfe)
hme2: Ethernet address 08:00:20:72:4e:a1
ukphy1 at hme2 phy 1: QS6612 10/100 media interface (OUI 0x00068a, model
0x0000), rev. 1
ukphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
hme3 at sbus0 slot 2 offset 0x8c20000 level 4 (ipl 7): Sun Happy Meal
Ethernet (SUNW,qfe)
hme3: Ethernet address 08:00:20:72:4e:a1
ukphy2 at hme3 phy 1: QS6612 10/100 media interface (OUI 0x00068a, model
0x0000), rev. 1
ukphy2: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
hme4 at sbus0 slot 2 offset 0x8c30000 level 4 (ipl 7): Sun Happy Meal
Ethernet (SUNW,qfe)
hme4: Ethernet address 08:00:20:72:4e:a1
ukphy3 at hme4 phy 1: QS6612 10/100 media interface (OUI 0x00068a, model
0x0000), rev. 1
ukphy3: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
eccmemctl has not been converted to device_t
eccmemctl0 at mainbus0 ioaddr 0x0: version 0x0/0x2
cpu0: booting secondary processors: cpu1
scsibus0: waiting 2 seconds for devices to settle...
scsibus1: waiting 2 seconds for devices to settle...
sd0 at scsibus1 target 0 lun 0: <SEAGATE, ST373207LC, 0004> disk fixed
sd0: 70007 MB, 90774 cyl, 2 head, 789 sec, 512 bytes/sect x 143374744 sectors
sd0: sync (100.00ns offset 15), 16-bit (20.000MB/s) transfers, tagged queueing
sd1 at scsibus1 target 1 lun 0: <SEAGATE, ST336605LSUN36G, 0638> disk fixed
sd1(esp1:0:1:0): Check Condition on CDB: 0x00 00 00 00 00 00
SENSE KEY: Not Ready
ASC/ASCQ: Logical Unit Not Ready, Initialization Command Required
FRU CODE: 0x2
sd1: drive offline
sd1: sync (100.00ns offset 15), 16-bit (20.000MB/s) transfers, tagged queueing
swwdog0: software watchdog initialized
root on sd0a dumps on sd0b
root file system type: ffs
Thu Jul 14 21:11:28 CEST 2011
Starting watchdog timer.
Starting root file system check:
/dev/rsd0a: file system is clean; not checking
Configuring CCD devices.
swapctl: adding /dev/sd0b as swap device at priority 0
Starting file system checks:
/dev/rsd0d: file system is clean; not checking
/dev/rccd0a: file system is clean; not checking
/dev/rsd0e: file system is clean; not checking
/dev/rccd0d: file system is clean; not checking
/dev/rsd0f: file system is clean; not checking
/dev/rccd0e: file system is clean; not checking
/dev/rccd0f: file system is clean; not checking
/dev/rccd0b: file system is clean; not checking
/dev/rccd0g: file system is clean; not checking
Setting tty flags.
Setting sysctl variables:
net.inet.tcp.rfc1323: 1 -> 0
net.inet.tcp.mss_ifmtu: 0 -> 1
net.inet.ip.forwarding: 1 -> 1
net.inet.ip.redirect: 1 -> 0
net.inet.ip.do_loopback_cksum: 0 -> 1
net.inet.tcp.do_loopback_cksum: 0 -> 1
net.inet.udp.do_loopback_cksum: 0 -> 1
kern.logsigexit: 0 -> 1
kern.maxproc: 1044 -> 4096
ddb.onpanic: 1 -> 0
Starting network.
Hostname: pizza.causeuse.org
NIS domainname: Forstquelle
Non-unique normal route, mask not entered
Non-unique normal route, mask not entered
Non-unique normal route, mask not entered
route: writing to routing socket: File exists
IPv6 mode: host
Configuring network interfaces: hme1 hme2 hme4 pppoe0.
Adding interface aliases:.
pppoe0: connected to rdsl-drms-de02
pppoe0: connected to rdsl-drms-de02
pppoe0: received unexpected PADO
pppoe0: connected to rdsl-drms-de02
pppoe0: received unexpected PADO
pppoe0: connected to rdsl-drms-de02
pppoe0: host unique tag found, but it belongs to a connection in state 3
pppoe: received PADO but could not find request for it
Enabling pf firewall.
Building databases: dev, utmp, utmpx, services done
Trimming log files: done.
Starting syslogd.
Starting named.
Starting rpcbind.
Starting ypserv.
Starting ypbind.
Starting yppasswdd.
Mounting all filesystems...
WARNING: negative runtime; monotonic clock has gone backwards
cpu0: bogus interrupt ipl 0xa pc=0xf00375dc npc=0xf00375e0 psr=0x404007c4<S,PS>
Clearing temporary files.
Starting amd.
Jul 14 21:12:04 pizza amd[363]/warn: getnetbyaddr failed on 0xac100700,
succeeded on 0xac1007
Jul 14 21:12:04 pizza amd[363]/warn: getnetbyaddr failed on 0xac100800,
succeeded on 0xac1008
Jul 14 21:12:04 pizza amd[363]/info: using configuration file /etc/amd.conf
Updating fontconfig cache: done
Creating a.out runtime link editor directory cache.
Checking quotas: done.
Starting mountd.
Starting nfsd.
Setting securelevel: kern.securelevel: 0 -> 1
Starting virecover.
Starting ifwatchd.
Starting pflogd.
Checking for core dump...
savecore: no core dump
Starting dhcpd.
Starting local daemons:.
Stopping Amanda spool disk (sd1):.
Starting lpd.
Updating motd.
Starting ntpd.
Starting rarpd.
Starting timed.
panic: kernel diagnostic assertion "l->l_nopreempt == 0" failed: file
"/public/netbsd-developer/sys/sys/userret.h", line 118Stopped in pid 778.1
(ntpd) at netbsd:cpu_Debugger+0x4: or %o7, %g0, %g1
db{0}> t
cpu_Debugger(0xf37f4a38, 0x0, 0x23, 0xf0301cd8, 0x8, 0x1000) at
netbsd:zsc_intr_hard+0xf4
zsc_intr_hard(0x8, 0xf031dfe8, 0x83, 0xf031e028, 0xffff, 0xf035f358) at
netbsd:zshard+0xc
zshard(0x0, 0xf029ff10, 0xf00, 0x408010e1, 0xf034b800, 0x6f2) at
netbsd:sparc_interrupt44c+0x150
sparc_interrupt44c(0x0, 0xf0301cb0, 0x1f0, 0xf0301cd8, 0xbd, 0x1000) at
netbsd:_kernel_lock+0xf0
_kernel_lock(0x1, 0xf031dfe8, 0x83, 0xf031e028, 0xffff, 0xf035f358) at
netbsd:intr_biglock_wrapper+0x4
intr_biglock_wrapper(0xf0d92d00, 0xf00cc0e4, 0x700, 0x408010e4, 0x0, 0xa)
at netbsd:sparc_interrupt44c+0x150
sparc_interrupt44c(0xf02ecdd0, 0xf0319d90, 0x1, 0xf0319dc0, 0xf4fd1eb0,
0xf0361dc0) at netbsd:mutex_exit+0x5c
mutex_exit(0xf035e28c, 0x0, 0x0, 0xf035e28c, 0x64, 0xffffffff) at
netbsd:vprintf+0x24
vprintf(0xf032d3a0, 0xf4fd1ea0, 0xf041e000, 0x0, 0xf0362c00, 0xf0362d2c) at
netbsd:panic+0x1a4
panic(0xf032d3a0, 0xf02ecdd0, 0xf031bcc0, 0xf031bc70, 0xf0370800, 0x104) at
netbsd:kern_assert+0x30
kern_assert(0xf02ecdd0, 0xf031bc70, 0x76, 0xf031bcc0, 0x1, 0x0) at
netbsd:syscall_plain+0x384
syscall_plain(0xf4f2e378, 0xf4fd1fb0, 0x404ac0c8, 0x1, 0x0, 0x52) at
netbsd:memfault_sun4m+0x408
syscall_plain(0xf4f2e378, 0xf4fd1fb0, 0x404ac0c8, 0x1, 0x0, 0x52) at
netbsd:memfault_sun4m+0x408
db{0}> ps
PID LID S CPU FLAGS STRUCT LWP * NAME WAIT
753 1 3 1 0 f4f2fca0 sh biowait
789 1 3 0 80 f4f219c0 timed select
815 1 3 0 40080 f36198c0 rarpd select
778 > 1 7 0 40000 f4fe1a00 ntpd
541 1 3 1 80 f43983c0 lpd select
668 1 3 1 80 f4481c20 named kqueue
570 1 3 1 80 f4f21180 dhcpd select
547 > 1 7 1 0 f4f21700 pflogd
517 1 3 1 80 f4323920 pflogd netio
461 1 3 1 80 f4f21c80 ifwatchd netio
411 5 3 1 80 f4efe420 slave nfsd
411 4 3 0 80 f4efe6e0 slave nfsd
411 3 3 0 80 f4efe9a0 slave nfsd
411 2 3 0 80 f49c9400 slave nfsd
411 1 3 1 80 f4efec60 master select
300 1 3 0 80 f49c9140 mountd select
374 1 3 1 80 f4398c00 amd select
270 1 3 1 80 f44813e0 rpc.yppasswdd select
260 1 3 0 80 f44816a0 ypbind select
254 1 3 0 80 f4481960 ypserv select
244 1 3 1 80 f43230e0 rpcbind select
223 1 3 0 80 f43233a0 syslogd kqueue
19 1 3 1 80 f4323660 wdogctl nanoslp
9 1 3 1 80 f4323be0 sh wait
8 1 3 1 80 f361aba0 sh pipe_rd
7 1 3 0 80 f42890c0 sh wait
6 1 3 1 80 f4289380 sh wait
2 1 3 1 80 f361a620 sh wait
1 1 3 1 80 f3619080 init wait
0 45 3 1 200 f49c96c0 nfsio nfsiod
0 44 3 1 200 f49c9980 nfsio nfsiod
0 43 3 1 200 f49c9c40 nfsio nfsiod
0 42 3 1 200 f4481120 nfsio nfsiod
0 41 3 0 200 f4398680 ccd0 ccdthr
0 40 3 1 200 f4398940 physiod physiod
0 39 3 0 200 f4289640 aiodoned aiodoned
0 38 3 1 200 f4289bc0 ioflush syncer
0 37 3 1 200 f4289900 pgdaemon pgdaemon
0 34 3 1 200 f361a0a0 pfpurge pftm
0 33 3 0 200 f3619600 swwreboot swwreboot
0 32 3 0 200 f361a8e0 unpgc unpgc
0 31 3 1 200 f361a360 vmem_rehash vmem_rehash
0 22 3 0 200 f3619b80 scsibus1 sccomp
0 21 3 1 200 f3617060 scsibus0 sccomp
0 20 3 1 200 f3617320 xcall/1 xcall
0 19 1 1 200 f36175e0 softser/1
0 18 1 1 200 f36178a0 softclk/1
0 17 1 1 200 f3617b60 softbio/1
0 16 1 1 200 f3612040 softnet/1
0 15 1 1 201 f3612300 idle/1
0 14 3 0 200 f36125c0 pmfsuspend pmfsuspend
0 13 3 1 200 f3612880 pmfevent pmfevent
0 12 3 0 200 f3612b40 sopendfree sopendfr
0 11 3 1 200 f360f020 nfssilly nfssilly
0 10 3 0 200 f360f2e0 cachegc cachegc
0 9 3 1 200 f360f5a0 vrele vrele
0 8 3 1 200 f360f860 modunload mod_unld
0 7 3 0 200 f360fb20 xcall/0 xcall
0 6 1 0 200 f360d000 softser/0
0 5 1 0 200 f360d2c0 softclk/0
0 4 1 0 200 f360d580 softbio/0
0 3 1 0 200 f360d840 softnet/0
0 2 1 0 201 f360db00 idle/0
0 1 3 1 200 f034ab80 swapper uvm
db{0}> reboot
syncing disks... Stopped in pid 778.1 (ntpd) at netbsd:cpu_Debugger+0x4:
or %o7, %g0, %g1
db{0}> reboot 0x04
rebooting
Resetting ...
</snip>
--
"It's never straight up and down" (DEVO)
Home |
Main Index |
Thread Index |
Old Index