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