Panic: vm_page_dirty: page is free!

From: Andrea Campi <andrea+freebsd_current_at_webcom.it>
Date: Sun, 27 Mar 2005 15:11:00 +0200
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.
Received on Sun Mar 27 2005 - 11:11:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:30 UTC