GENERIC HEAD from May 14 19:16 UTC, vmcore.317

GDB: no debug ports present
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2005 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 6.0-CURRENT #0: Sun May 15 08:20:17 CEST 2005
    pho@current.osted.lan:/usr/src/sys/i386/compile/Generic
WARNING: WITNESS option enabled, expect reduced performance.
ACPI APIC Table: <A M I  OEMAPIC >
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Celeron(R) CPU 1.80GHz (1799.14-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0xf13  Stepping = 3
  Features=0x3febfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM>
real memory  = 267583488 (255 MB)
avail memory = 252424192 (240 MB)
:
Trying to mount root from ufs:/dev/ad0s1a
WARNING: / was not properly dismounted
rl0: link state changed to DOWN
lock order reversal
 1st 0xc0961fe0 Softdep Lock (Softdep Lock) @ ufs/ffs/ffs_softdep.c:3390
 2nd 0xc09053c4 user map (user map) @ vm/vm_map.c:2997
KDB: stack backtrace:
kdb_backtrace(0,ffffffff,c09179a0,c0917e00,c08a40cc) at kdb_backtrace+0x29
witness_checkorder(c09053c4,9,c085a8da,bb5) at witness_checkorder+0x55c
_sx_xlock(c09053c4,c085a8d1,bb5) at _sx_xlock+0x50
_vm_map_lock_read(c0905380,c085a8d1,bb5,1000046,c1750868) at _vm_map_lock_read+0x37
vm_map_lookup(cea73b5c,0,1,cea73b60,cea73b50) at vm_map_lookup+0x28
vm_fault(c0905380,0,1,0,c1751a80) at vm_fault+0x66
trap_pfault(cea73c24,0,20) at trap_pfault+0xf2
trap(cea70008,c0640028,c0950028,c1751a80,c219ea60) at trap+0x33d
calltrap() at calltrap+0x5
--- trap 0xc, eip = 0xc0755fd9, esp = 0xcea73c64, ebp = 0xcea73c94 ---
handle_workitem_remove(c219ea60,0) at handle_workitem_remove+0x6d
process_worklist_item(0,0) at process_worklist_item+0x18d
softdep_process_worklist(0) at softdep_process_worklist+0xf4
sched_sync(0,cea73d38,0,c06729a8,0) at sched_sync+0x25e
fork_exit(c06729a8,0,cea73d38) at fork_exit+0xa0
fork_trampoline() at fork_trampoline+0x8
--- trap 0x1, eip = 0, esp = 0xcea73d6c, ebp = 0 ---


Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0x20
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc0755fd9
stack pointer           = 0x28:0xcea73c64
frame pointer           = 0x28:0xcea73c94
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 56 (syncer)
[thread pid 56 tid 100068 ]
Stopped at      handle_workitem_remove+0x6d:    pushl   0x20(%ebx)
db> her
No such command
db> where
Tracing pid 56 tid 100068 td 0xc1751a80
handle_workitem_remove(c219ea60,0) at handle_workitem_remove+0x6d
process_worklist_item(0,0) at process_worklist_item+0x18d
softdep_process_worklist(0) at softdep_process_worklist+0xf4
sched_sync(0,cea73d38,0,c06729a8,0) at sched_sync+0x25e
fork_exit(c06729a8,0,cea73d38) at fork_exit+0xa0
fork_trampoline() at fork_trampoline+0x8
--- trap 0x1, eip = 0, esp = 0xcea73d6c, ebp = 0 ---
db> call doadump
Dumping 255 MB
 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240
Dump complete
0xf
db> reset

(kgdb) bt
#0  doadump () at pcpu.h:165
#1  0xc0467dae in db_fncall (dummy1=0x0, dummy2=0x0, dummy3=0xc07bbf53, dummy4=0xcea73a88 "´:§Î¬¢{À| :§Î¤:§Î\220\a")
    at ../../../ddb/db_command.c:531
#2  0xc0467bbc in db_command (last_cmdp=0xc08ec124, cmd_table=0x0, aux_cmd_tablep=0xc086a76c, aux_cmd_tablep_end=0xc086a788)
    at ../../../ddb/db_command.c:349
#3  0xc0467c84 in db_command_loop () at ../../../ddb/db_command.c:455
#4  0xc0469809 in db_trap (type=0xc, code=0x0) at ../../../ddb/db_main.c:228
#5  0xc06382d4 in kdb_trap (type=0xc, code=0x0, tf=0xcea73c24) at ../../../kern/subr_kdb.c:471
#6  0xc07d7337 in trap_fatal (frame=0xcea73c24, eva=0x20) at ../../../i386/i386/trap.c:809
#7  0xc07d7083 in trap_pfault (frame=0xcea73c24, usermode=0x0, eva=0x20) at ../../../i386/i386/trap.c:732
#8  0xc07d6cc9 in trap (frame=
      {tf_fs = 0xcea70008, tf_es = 0xc0640028, tf_ds = 0xc0950028, tf_edi = 0xc1751a80, tf_esi = 0xc219ea60, tf_ebp = 0xcea73c94, tf_isp = 0xcea73c50, tf_ebx = 0x0, tf_edx = 0xc0954b7c, tf_ecx = 0xc0954b68, tf_eax = 0xcea73c80, tf_trapno = 0xc, tf_err = 0x0, tf_eip = 0xc0755fd9, tf_cs = 0x20, tf_eflags = 0x10206, tf_esp = 0x1deb4, tf_ss = 0x0}) at ../../../i386/i386/trap.c:422
#9  0xc07c49ea in calltrap () at ../../../i386/i386/exception.s:139
#10 0xcea70008 in ?? ()
#11 0xc0640028 in turnstile_broadcast (ts=0xc219ea60) at ../../../kern/subr_turnstile.c:729
#12 0xc07520c9 in process_worklist_item (matchmnt=0x0, flags=0xc1751a80) at ../../../ufs/ffs/ffs_softdep.c:825
#13 0xc0751e24 in softdep_process_worklist (matchmnt=0x0) at ../../../ufs/ffs/ffs_softdep.c:700
#14 0xc0672c06 in sched_sync () at ../../../kern/vfs_subr.c:1615
#15 0xc060d5ec in fork_exit (callout=0xc06729a8 <sched_sync>, arg=0x0, frame=0xcea73d38) at ../../../kern/kern_fork.c:789
#16 0xc07c4a4c in fork_trampoline () at ../../../i386/i386/exception.s:208
(kgdb) l *0xc0755fd9
0xc0755fd9 is in handle_workitem_remove (../../../ufs/ffs/ffs_softdep.c:3391).
3386                    softdep_error("handle_workitem_remove: vget", error);
3387                    return;
3388            }
3389            ip = VTOI(vp);
3390            ACQUIRE_LOCK(&lk);
3391            if ((inodedep_lookup(ip->i_fs, dirrem->dm_oldinum, 0, &inodedep)) == 0)
3392                    panic("handle_workitem_remove: lost inodedep");
3393            /*
3394             * Normal file deletion.
3395             */
(kgdb) f 11
#11 0xc0640028 in turnstile_broadcast (ts=0xc219ea60) at ../../../kern/subr_turnstile.c:729
729                     MPASS(ts1 != NULL);
(kgdb) l
724     #ifdef TURNSTILE_PROFILING
725                             tc->tc_depth--;
726     #endif
727                     } else
728                             ts1 = LIST_FIRST(&ts->ts_free);
729                     MPASS(ts1 != NULL);
730                     LIST_REMOVE(ts1, ts_hash);
731                     td->td_turnstile = ts1;
732             }
733     }
(kgdb) info loc
tc = (struct turnstile_chain *) 0x0
ts1 = (struct turnstile *) 0x0
td = (struct thread *) 0x0
(kgdb) p ts
$3 = (struct turnstile *) 0xc219ea60
(kgdb) p *ts
$4 = {ts_blocked = {tqh_first = 0xc1dff440, tqh_last = 0xc1f92100}, ts_pending = {tqh_first = 0xc, tqh_last = 0x0}, ts_hash = {
    le_next = 0xc28479a4, le_prev = 0xc173a800}, ts_link = {le_next = 0x1deb4, le_prev = 0x1cce4}, ts_free = {lh_first = 0x0},
  ts_lockobj = 0xc2b8d5c0, ts_owner = 0x8000000c}
(kgdb) f 12
#12 0xc07520c9 in process_worklist_item (matchmnt=0x0, flags=0xc1751a80) at ../../../ufs/ffs/ffs_softdep.c:825
825                     handle_workitem_remove(WK_DIRREM(wk), vp);
(kgdb) l
820                     if (vn_write_suspend_wait(NULL, mp, V_NOWAIT))
821                             panic("%s: dirrem on suspended filesystem",
822                                     "process_worklist_item");
823                     if (mp == matchmnt)
824                             matchcnt += 1;
825                     handle_workitem_remove(WK_DIRREM(wk), vp);
826                     break;
827
828             case D_FREEBLKS:
829                     /* releasing blocks and/or fragments from a file */
(kgdb) info loc
wk = (struct worklist *) 0xc173a800
wkend = (struct worklist *) 0x0
mp = (struct mount *) 0x0
vp = (struct vnode *) 0x0
matchcnt = 0x0
(kgdb) p *wk
$1 = {wk_list = {le_next = 0xc173a400, le_prev = 0xc173b000}, wk_type = 0xc5e0, wk_state = 0xc08d}