[panic] runq_choose: no proc on busy queue

Peter Kostouros kpeter at melbpc.org.au
Fri Aug 13 19:45:25 PDT 2004


Hi

I cvsup'ed a built a system on 12AUG (~7pm (I'm at GMT + 10)). The 
system has been running well. I built and installed a kernel with 
PREEMPTION defined and now get regular panics at startup (shortly after 
identifying ata1-slave). I hope the attached backtrace is useful.

Note, I am running SCHED_ULE and have a UP processor (no HTT).

-- 

Regards

Peter

As always the organisation disavows knowledge of this email


_______________________________________________

freebsd-current at freebsd.org mailing list

http://lists.freebsd.org/mailman/listinfo/freebsd-current

To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"




-------------- next part --------------
Script started on Sat Aug 14 12:01:55 2004
eva# exitgdb6 -k -f ./kernel.debug -c /var/crash/vmcore.19

GNU gdb 20040720 [GDB v6.x for 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-portbld-freebsd5.2"...
panic: runq_choose: no proc on busy queue
panic messages:
---
panic: runq_choose: no proc on busy queue
cpuid = 0; 
KDB: stack backtrace:
kdb_backtrace(c072ecf7,0,c072f2d8,dd9a6ac4,c23622c0) at 0xc056caee = kdb_backtrace+0x2e
panic(c072f2d8,1,c072f1c8,2b9,0) at 0xc054fbf5 = panic+0x145
runq_choose(c0794b28,1,c0730145,326,c23622c0) at 0xc0556a6e = runq_choose+0x7e
kseq_choose(c0794920,1,c0730145,612,c2285a50) at 0xc0562d19 = kseq_choose+0x49
sched_choose(0,c0730145,180,c23622c0,c2285a50) at 0xc0564058 = sched_choose+0x68
choosethread(c0794920,c2285a50,c0730145,48b,dd9a6ba4) at 0xc0556245 = choosethread+0x45
sched_switch(c23622c0,0,c072f499,129,7ecc190c) at 0xc05636b5 = sched_switch+0x155
mi_switch(1,0,c073161e,198,0) at 0xc0557def = mi_switch+0x29f
sleepq_switch(c261f534,1,c072de63,17a,0) at 0xc05738d4 = sleepq_switch+0x134
sleepq_wait_sig(c261f534,0,c072f499,e7,0) at 0xc0573b52 = sleepq_wait_sig+0x12
msleep(c261f534,c261f5a0,15c,c0732f07,0) at 0xc0557997 = msleep+0x497
kern_wait(c23622c0,ffffffff,dd9a6c8c,2,dd9a6c90) at 0xc053574d = kern_wait+0x7bd
wait4(c23622c0,dd9a6d14,10,7,4) at 0xc0534f10 = wait4+0x30
syscall(2f,2f,2f,bfbfe064,3b) at 0xc06ee300 = syscall+0x2a0
Xint0x80_syscall() at 0xc06d921f = Xint0x80_syscall+0x1f
--- syscall (7, FreeBSD ELF32, wait4), eip = 0x2814638f, esp = 0xbfbfdfac, ebp = 0xbfbfdfc8 ---
KDB: enter: panic
Dumping 1023 MB
 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320 336 352 368 384 400 416 432 448 464 480 496 512 528 544 560 576 592 608 624 640 656 672 688 704 720 736 752 768 784 800 816 832 848 864 880 896 912 928 944 960 976 992 1008
---
#0  doadump () at pcpu.h:159
/mnt/cvs/FreeBSD/usr/src/sys/i386/include/pcpu.h:159:5156:beg:0xc054f22c
doadump () at pcpu.h:159
/mnt/cvs/FreeBSD/usr/src/sys/i386/include/pcpu.h:159:5156:beg:0xc054f22c
(kgdb) bt
#0  doadump () at pcpu.h:159
#1  0xc0474f35 in db_fncall (dummy1=0, dummy2=0, dummy3=1999, dummy4=0xdd9a68e4 "\200\206xÀ")
    at /mnt/cvs/FreeBSD/usr/src/sys/ddb/db_command.c:531
#2  0xc0474cc2 in db_command (last_cmdp=0xc0787d84, cmd_table=0x0, aux_cmd_tablep=0xc0750538, 
    aux_cmd_tablep_end=0xc075053c) at /mnt/cvs/FreeBSD/usr/src/sys/ddb/db_command.c:349
#3  0xc0474dd5 in db_command_loop () at /mnt/cvs/FreeBSD/usr/src/sys/ddb/db_command.c:455
#4  0xc0476ee5 in db_trap (type=3, code=0) at /mnt/cvs/FreeBSD/usr/src/sys/ddb/db_main.c:221
#5  0xc056cea8 in kdb_trap (type=0, code=0, tf=0xdd9a6a40)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/subr_kdb.c:401
#6  0xc06ed998 in trap (frame=
      {tf_fs = 24, tf_es = 16, tf_ds = -577110000, tf_edi = 256, tf_esi = 1, tf_ebp = -577082744, tf_isp = -577082772, tf_ebx = -577082684, tf_edx = 1, tf_ecx = -1056882688, tf_eax = 18, tf_trapno = 3, tf_err = 0, tf_eip = -1068053616, tf_cs = 8, tf_eflags = 134, tf_esp = -1066201980, tf_ss = -1066210407}) at /mnt/cvs/FreeBSD/usr/src/sys/i386/i386/trap.c:576
#7  0xc06d91ca in calltrap () at /mnt/cvs/FreeBSD/usr/src/sys/i386/i386/exception.s:140
#8  0x00000018 in ?? ()
#9  0x00000010 in ?? ()
#10 0xdd9a0010 in ?? ()
#11 0x00000100 in ?? ()
#12 0x00000001 in ?? ()
#13 0xdd9a6a88 in ?? ()
#14 0xdd9a6a6c in ?? ()
#15 0xdd9a6ac4 in ?? ()
#16 0x00000001 in ?? ()
#17 0xc1014000 in ?? ()
#18 0x00000012 in ?? ()
#19 0x00000003 in ?? ()
#20 0x00000000 in ?? ()
#21 0xc056cb90 in kdb_enter (msg=0x0) at cpufunc.h:56
#22 0xc054fc0a in panic (fmt=0xc072f2d8 "runq_choose: no proc on busy queue")
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_shutdown.c:545
#23 0xc0556a6e in runq_choose (rq=0xc0794b28) at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_switch.c:701
#24 0xc0562d19 in kseq_choose (kseq=0xc0794920) at /mnt/cvs/FreeBSD/usr/src/sys/kern/sched_ule.c:810
#25 0xc0564058 in sched_choose () at /mnt/cvs/FreeBSD/usr/src/sys/kern/sched_ule.c:1561
#26 0xc0556245 in choosethread () at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_switch.c:143
#27 0xc05636b5 in sched_switch (td=0xc23622c0, newtd=0x0)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/sched_ule.c:1205
#28 0xc0557def in mi_switch (flags=3466407, newtd=0x0)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_synch.c:352
#29 0xc05738d4 in sleepq_switch (wchan=0x0)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/subr_sleepqueue.c:412
#30 0xc0573b52 in sleepq_wait_sig (wchan=0x0)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/subr_sleepqueue.c:529
#31 0xc0557997 in msleep (ident=0xc261f534, mtx=0xc261f5a0, priority=348, wmesg=0xc0732f07 "wait", 
    timo=0) at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_synch.c:238
#32 0xc053574d in kern_wait (td=0xc23622c0, pid=-1, status=0xdd9a6c8c, options=2, rusage=0xdd9a6c90)
    at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_exit.c:742
#33 0xc0534f10 in wait4 (td=0x0, uap=0xdd9a6d14) at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_exit.c:568
#34 0xc06ee300 in syscall (frame=
      {tf_fs = 47, tf_es = 47, tf_ds = 47, tf_edi = -1077944220, tf_esi = 59, tf_ebp = -1077944376, tf_isp = -577081996, tf_ebx = 672968524, tf_edx = 0, tf_ecx = 0, tf_eax = 7, tf_trapno = 12, tf_err = 2, tf_eip = 672424847, tf_cs = 31, tf_eflags = 514, tf_esp = -1077944404, tf_ss = 47})
    at /mnt/cvs/FreeBSD/usr/src/sys/i386/i386/trap.c:1004
#35 0xc06d921f in Xint0x80_syscall () at /mnt/cvs/FreeBSD/usr/src/sys/i386/i386/exception.s:201
#36 0x0000002f in ?? ()
#37 0x0000002f in ?? ()
---Type <return> to continue, or q <return> to quit---q
Quit
(kgdb) up 23
#23 0xc0556a6e in runq_choose (rq=0xc0794b28) at /mnt/cvs/FreeBSD/usr/src/sys/kern/kern_switch.c:701
/mnt/cvs/FreeBSD/usr/src/sys/kern/kern_switch.c:701:19878:beg:0xc0556a6e
(kgdb) l
696	
697		mtx_assert(&sched_lock, MA_OWNED);
698		while ((pri = runq_findbit(rq)) != -1) {
699			rqh = &rq->rq_queues[pri];
700			ke = TAILQ_FIRST(rqh);
701			KASSERT(ke != NULL, ("runq_choose: no proc on busy queue"));
702			CTR3(KTR_RUNQ,
703			    "runq_choose: pri=%d kse=%p rqh=%p", pri, ke, rqh);
704			return (ke);
705		}
(kgdb) p rq
$1 = (struct runq *) 0xc0794b28
(kgdb) p rq*
$2 = {rq_status = {rqb_bits = {8388608, 8388608}}, rq_queues = {{tqh_first = 0x0, 
      tqh_last = 0xc0794b30}, {tqh_first = 0x0, tqh_last = 0xc0794b38}, {tqh_first = 0x0, 
      tqh_last = 0xc0794b40}, {tqh_first = 0x0, tqh_last = 0xc0794b48}, {tqh_first = 0x0, 
      tqh_last = 0xc0794b50}, {tqh_first = 0x0, tqh_last = 0xc0794b58}, {tqh_first = 0x0, 
      tqh_last = 0xc0794b60}, {tqh_first = 0x0, tqh_last = 0xc0794b68}, {tqh_first = 0x0, 
      tqh_last = 0xc0794b70}, {tqh_first = 0x0, tqh_last = 0xc0794b78}, {tqh_first = 0x0, 
      tqh_last = 0xc0794b80}, {tqh_first = 0x0, tqh_last = 0xc0794b88}, {tqh_first = 0x0, 
      tqh_last = 0xc0794b90}, {tqh_first = 0x0, tqh_last = 0xc0794b98}, {tqh_first = 0x0, 
      tqh_last = 0xc0794ba0}, {tqh_first = 0x0, tqh_last = 0xc0794ba8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794bb0}, {tqh_first = 0x0, tqh_last = 0xc0794bb8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794bc0}, {tqh_first = 0x0, tqh_last = 0xc0794bc8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794bd0}, {tqh_first = 0x0, tqh_last = 0xc0794bd8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794be0}, {tqh_first = 0xc2284190, tqh_last = 0xc22841a8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794bf0}, {tqh_first = 0x0, tqh_last = 0xc0794bf8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c00}, {tqh_first = 0x0, tqh_last = 0xc0794c08}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c10}, {tqh_first = 0x0, tqh_last = 0xc0794c18}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c20}, {tqh_first = 0x0, tqh_last = 0xc0794c28}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c30}, {tqh_first = 0x0, tqh_last = 0xc0794c38}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c40}, {tqh_first = 0x0, tqh_last = 0xc0794c48}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c50}, {tqh_first = 0x0, tqh_last = 0xc0794c58}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c60}, {tqh_first = 0x0, tqh_last = 0xc0794c68}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c70}, {tqh_first = 0x0, tqh_last = 0xc0794c78}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c80}, {tqh_first = 0x0, tqh_last = 0xc0794c88}, {tqh_first = 0x0, 
      tqh_last = 0xc0794c90}, {tqh_first = 0x0, tqh_last = 0xc0794c98}, {tqh_first = 0x0, 
      tqh_last = 0xc0794ca0}, {tqh_first = 0x0, tqh_last = 0xc0794ca8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794cb0}, {tqh_first = 0x0, tqh_last = 0xc0794cb8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794cc0}, {tqh_first = 0x0, tqh_last = 0xc0794cc8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794cd0}, {tqh_first = 0x0, tqh_last = 0xc0794cd8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794ce0}, {tqh_first = 0x0, tqh_last = 0xc2285888}, {tqh_first = 0x0, 
      tqh_last = 0xc0794cf0}, {tqh_first = 0x0, tqh_last = 0xc0794cf8}, {tqh_first = 0x0, 
      tqh_last = 0xc0794d00}, {tqh_first = 0x0, tqh_last = 0xc0794d08}, {tqh_first = 0x0, 
      tqh_last = 0xc0794d10}, {tqh_first = 0x0, tqh_last = 0xc0794d18}, {tqh_first = 0x0, 
      tqh_last = 0xc0794d20}, {tqh_first = 0x0, tqh_last = 0xc0794d28}}}
(kgdb) q
eva# exit

exit

Script done on Sat Aug 14 12:09:00 2004


More information about the freebsd-current mailing list