| Summary: | -current hang caught and crash-dump'd. | ||
|---|---|---|---|
| Product: | Base System | Reporter: | Josef Karthauser <joe> |
| Component: | kern | Assignee: | freebsd-bugs (Nobody) <bugs> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | 5.0-CURRENT | ||
| Hardware: | Any | ||
| OS: | Any | ||
State Changed From-To: open->feedback The stack trace here is quite uninteresting, as it only shows the keyboard interrupt thread handling the DDB escape sequence. Do you have more information or can this be closed? State Changed From-To: feedback->closed A lot has happened in -current since this report. I don't think that this bug still exists. |
I've been experiencing this hang for a while now on -current, never managed to catch it before. The machine runs fine, for two days in this last case, and then randomly (mostly when I've got a lot of disk/network IO happening) something blocks and some processes stop working, and others continue running fine. Usually I have to physically switch the machine off because even a shutdown doesn't complete. Fix: I've got a core file that I managed to panic-dump by hand to capture the state of the machine if anyone wants to take a look. genius# gdb -k kernel.debug.10 vmcore.10 GNU gdb 4.18 Copyright 1998 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-unknown-freebsd"... IdlePTD 4894720 initial pcb at 367480 panicstr: allocbuf: buffer not busy panic messages: --- panic: from debugger syncing disks... panic: allocbuf: buffer not busy Uptime: 1d14h38m2s /dev/vmmon: Module vmmon: unloaded dumping to dev ad0s2b, offset 917632 dump ata0: resetting devices .. done 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 --- #0 dumpsys () at /usr/src/sys/kern/kern_shutdown.c:487 487 if (dumping++) { (kgdb) bt #0 dumpsys () at /usr/src/sys/kern/kern_shutdown.c:487 #1 0xc01e3e48 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:330 #2 0xc01e4275 in panic (fmt=0xc02f42e8 "allocbuf: buffer not busy") at /usr/src/sys/kern/kern_shutdown.c:623 #3 0xc02149fc in allocbuf (bp=0xc34471dc, size=8192) at /usr/src/sys/kern/vfs_bio.c:2407 #4 0xc0214979 in getblk (vp=0xcc4c6d40, blkno=6225984, size=8192, slpflag=0, slptimeo=0) at /usr/src/sys/kern/vfs_bio.c:2353 #5 0xc021257e in breadn (vp=0xcc4c6d40, blkno=6225984, size=8192, rablkno=0x0, rabsize=0x0, cnt=0, cred=0x0, bpp=0xcc04ac5c) at /usr/src/sys/kern/vfs_bio.c:593 #6 0xc0212540 in bread (vp=0xcc4c6d40, blkno=6225984, size=8192, cred=0x0, bpp=0xcc04ac5c) at /usr/src/sys/kern/vfs_bio.c:575 #7 0xc026f4b1 in ffs_update (vp=0xcc4c8cc0, waitfor=0) at /usr/src/sys/ufs/ffs/ffs_inode.c:101 #8 0xc027c676 in ffs_fsync (ap=0xcc04acdc) at /usr/src/sys/ufs/ffs/ffs_vnops.c:292 #9 0xc027ab9e in ffs_sync (mp=0xc2214400, waitfor=2, cred=0xc0a25c00, p=0xc037e480) at vnode_if.h:441 #10 0xc021f6a1 in sync (p=0xc037e480, uap=0x0) at /usr/src/sys/kern/vfs_syscalls.c:622 #11 0xc01e3a8c in boot (howto=256) at /usr/src/sys/kern/kern_shutdown.c:239 #12 0xc01e4275 in panic (fmt=0xc02d419e "from debugger") at /usr/src/sys/kern/kern_shutdown.c:623 #13 0xc013a311 in db_panic (addr=-1070951823, have_addr=0, count=-1, modif=0xcc04ad9c "") at /usr/src/sys/ddb/db_command.c:443 #14 0xc013a2b1 in db_command (last_cmdp=0xc0316cc4, cmd_table=0xc0316b04, aux_cmd_tablep=0xc0310640, aux_cmd_tablep_end=0xc0310644) at /usr/src/sys/ddb/db_command.c:341 #15 0xc013a37b in db_command_loop () at /usr/src/sys/ddb/db_command.c:465 #16 0xc013c5ef in db_trap (type=3, code=0) at /usr/src/sys/ddb/db_trap.c:72 #17 0xc02a9000 in kdb_trap (type=3, code=0, regs=0xcc04ae90) at /usr/src/sys/i386/i386/db_interface.c:167 #18 0xc02b6170 in trap (frame={tf_fs = 24, tf_es = 16, tf_ds = 16, tf_edi = 0, tf_esi = -1070105792, tf_ebp = -872108324, tf_isp = -872108356, tf_ebx = 514, tf_edx = -1070561969, tf_ecx = 1920, tf_eax = 38, tf_trapno = 3, tf_err = 0, tf_eip = -1070951823, tf_cs = 8, tf_eflags = 70, tf_esp = -1070561985, tf_ss = -1070575127}) at /usr/src/sys/i386/i386/trap.c:564 #19 0xc02a9271 in Debugger (msg=0xc03051e9 "manual escape to debugger") at machine/cpufunc.h:63 #20 0xc02a5e1e in scgetc (sc=0xc037d7a0, flags=2) at /usr/src/sys/dev/syscons/syscons.c:3248 #21 0xc02a2265 in sckbdevent (thiskbd=0xc0376240, event=0, arg=0xc037d7a0) at /usr/src/sys/dev/syscons/syscons.c:620 #22 0xc0299a97 in atkbd_intr (kbd=0xc0376240, arg=0x0) at /usr/src/sys/dev/kbd/atkbd.c:458 #23 0xc02bf21c in atkbd_isa_intr (arg=0xc0376240) at /usr/src/sys/isa/atkbd_isa.c:140 #24 0xc01d8248 in ithread_loop (arg=0xc21c3800) at /usr/src/sys/kern/kern_intr.c:520 #25 0xc01d7372 in fork_exit (callout=0xc01d80a8 <ithread_loop>, arg=0xc21c3800, frame=0xcc04afa8) at /usr/src/sys/kern/kern_fork.c:723 (kgdb)