Panic: vm_page_dirty: page is free!
Andrea Campi
andrea+freebsd_current at webcom.it
Sun Mar 27 05:11:03 PST 2005
Hi,
I don't remember seeing this:
#0 doadump () at pcpu.h:164
#1 0xc0530842 in boot (howto=260) at ../../../kern/kern_shutdown.c:398
#2 0xc0530bb8 in panic (fmt=0xc070b5bc "vm_page_dirty: page is free!")
at ../../../kern/kern_shutdown.c:554
#3 0xc0661e9f in vm_page_dirty (m=0x0) at ../../../vm/vm_page.c:457
#4 0xc06ada9b in pmap_remove_pte (pmap=0xc07740e0, ptq=0xc12e3cb0,
va=3369250816) at ../../../i386/i386/pmap.c:1575
#5 0xc06adcff in pmap_remove (pmap=0xc07740e0, sva=3369250816,
eva=3369521152) at ../../../i386/i386/pmap.c:1682
#6 0xc065a9ac in vm_map_delete (map=0xc10200c0, start=3238133952,
end=3369521152) at ../../../vm/vm_map.c:2290
#7 0xc065750b in kmem_free_wakeup (map=0xc10200c0, addr=3369250816, size=0)
at ../../../vm/vm_kern.c:467
#8 0xc051515a in exec_free_args (args=0xcaf22cbc)
at ../../../kern/kern_exec.c:1004
#9 0xc0513b5b in execve (td=0x0, uap=0x0) at ../../../kern/kern_exec.c:183
#10 0xc06b29c0 in syscall (frame=
{tf_fs = 47, tf_es = 47, tf_ds = 47, tf_edi = 0, tf_esi = 0, tf_ebp = 0, t
f_isp = 0, tf_ebx = 0, tf_edx = 0, tf_ecx = 0, tf_eax = 0, tf_trapno = 0, tf_err
= 0, tf_eip = 134512768, tf_cs = 31, tf_eflags = 514, tf_esp = -1077944672, tf_
ss = 47}) at ../../../i386/i386/trap.c:951
#11 0xc069f63f in Xint0x80_syscall () at ../../../i386/i386/exception.s:200
#12 0x0000002f in ?? ()
#13 0x0000002f in ?? ()
...
Notice how vm_page_dirty() is called with a NULL m.
(kgdb) frame 4
#4 0xc06ada9b in pmap_remove_pte (pmap=0xc07740e0, ptq=0xc12e3cb0,
va=3369250816) at ../../../i386/i386/pmap.c:1575
1575 vm_page_dirty(m);
(kgdb) print pmap
$7 = 0xc07740e0
(kgdb) print *pmap
$8 = {pm_mtx = {mtx_object = {lo_class = 0xc072d6e8,
lo_name = 0xc0711086 "pmap", lo_type = 0xc0711086 "pmap",
lo_flags = 4390912, lo_list = {tqe_next = 0x0, tqe_prev = 0x0},
lo_witness = 0x0}, mtx_lock = 3246694400, mtx_recurse = 0},
pm_pdir = 0xc0c1e000, pm_pvlist = {tqh_first = 0xc95dd528,
tqh_last = 0xc95df1f0}, pm_active = 4294967295, pm_stats = {
resident_count = 0, wired_count = 3117}, pm_list = {le_next = 0x0,
le_prev = 0xc0752a7c}}
Is anything else needed? This is on a March 14 kernel, so I don't have
at least the latest changes to vm_page.c by Jeff Roberson. Don't know
if that's relevant though.
Bye,
Andrea
--
Actually, Microsoft is sort of a mixture between the Borg and the Ferengi.
More information about the freebsd-current
mailing list