6.0-STABLE Panic

Robert Watson rwatson at FreeBSD.org
Wed Jan 11 13:09:22 PST 2006


On Tue, 3 Jan 2006, Dikshie wrote:

> Dear All,
> my 6.0-STABLE always panic when "make buildworld"

This is actually a long-standing bug, but comes to light when accounting is 
used with recent versions of INVARIANTS, whcih are better able to detect the 
bug.  In principle, if you turn off INVARIANTS, it should stop occuring.  A 
patch has been proposed that fixes the underlying bug, and needs to be merged 
to HEAD.  If you need/want to run with INVARIANTS on, remove lines reading 
THREAD_NO_SLEEPING() and THREAD_SLEEPING_OK() from src/sys/kern/kern_timeout.c 
and recompile your kernel.  That will disable only those specific checks.

Robert N M Watson

>
> heres the dump:
>
> lapi# kgdb  kernel.debug vmcore.0
> [GDB will not be able to debug user-mode threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "i386-marcel-freebsd".
>
> Unread portion of the kernel message buffer:
> panic: trying to sleep while sleeping is prohibited
> KDB: stack backtrace:
> kdb_backtrace(100,c32f4480,c06f8c28,c32f4480,c06f3970) at 0xc0510929 = kdb_backtrace+0x29
> panic(c06988c7,c32f4480,0,c06f3970,d5629a7c) at 0xc04f9318 = panic+0xa8
> sleepq_add(c06f3970,c06f4a2c,c06917eb,1,c06f4a2c,0,c0691b7d,7d) at 0xc0515e68 = sleepq_add+0x8c
> cv_wait(c06f3970,c06f4a2c,0,16,d5629cb4) at 0xc04d3b5e = cv_wait+0x132
> _sx_xlock(c06f3940,c06918e2,180) at 0xc04fe334 = _sx_xlock+0x5c
> acctwatch(0) at 0xc04d1cf8 = acctwatch+0x20
> softclock(0) at 0xc05043d9 = softclock+0x211
> ithread_loop(c32ab500,d5629d38,c32ab500,c04e5d74,0) at 0xc04e5eb8 = ithread_loop+0x144
> fork_exit(c04e5d74,c32ab500,d5629d38) at 0xc04e5328 = fork_exit+0xa0
> fork_trampoline() at 0xc065169c = fork_trampoline+0x8
> --- trap 0x1, eip = 0, esp = 0xd5629d6c, ebp = 0 ---
> Uptime: 41m7s
> Dumping 510 MB (2 chunks)
>  chunk 0: 1MB (159 pages) ... ok
>  chunk 1: 511MB (130608 pages) 495 479 463 447 431 415 399 383 367 351 335 319 303 287 271 255 239 223 207 191 175 159 143 127 111 95 79 63 47 31 15
>
> #0  doadump () at pcpu.h:165
> 165     pcpu.h: No such file or directory.
>        in pcpu.h
> (kgdb) bt
> #0  doadump () at pcpu.h:165
> #1  0xc04f90d0 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:399
> #2  0xc04f937b in panic (fmt=0xc06988c7 "trying to sleep while sleeping is prohibited")
>    at /usr/src/sys/kern/kern_shutdown.c:555
> #3  0xc0515e68 in sleepq_add (wchan=0xc06f3970, lock=0xc06f4a2c, wmesg=0x0, flags=1)
>    at /usr/src/sys/kern/subr_sleepqueue.c:273
> #4  0xc04d3b5e in cv_wait (cvp=0xc06f3970, mp=0xc06f4a2c) at /usr/src/sys/kern/kern_condvar.c:127
> #5  0xc04fe334 in _sx_xlock (sx=0xc06f3940, file=0xc06918e2 "/usr/src/sys/kern/kern_acct.c", line=384)
>    at /usr/src/sys/kern/kern_sx.c:188
> #6  0xc04d1cf8 in acctwatch (a=0x0) at /usr/src/sys/kern/kern_acct.c:384
> #7  0xc05043d9 in softclock (dummy=0x0) at /usr/src/sys/kern/kern_timeout.c:290
> #8  0xc04e5eb8 in ithread_loop (arg=0xc32ab500) at /usr/src/sys/kern/kern_intr.c:547
> #9  0xc04e5328 in fork_exit (callout=0xc04e5d74 <ithread_loop>, arg=0xc32ab500, frame=0xd5629d38)
>    at /usr/src/sys/kern/kern_fork.c:789
> #10 0xc065169c in fork_trampoline () at /usr/src/sys/i386/i386/exception.s:208
> (kgdb)
>
>
>
> it is:
> lapi# uname -a
> FreeBSD lapi.itb.ac.id 6.0-STABLE FreeBSD 6.0-STABLE #0: Tue Jan  3 10:22:22 WIT 2006     dikshie at lapi.itb.ac.id:/usr/obj/usr/src/sys/LAPI  i386
>
>
>
>
>
>
>
>
>
> regards,
>
> -dikshie-
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
>


More information about the freebsd-stable mailing list