--- src.o/sys/i386/i386/pmap.c Sun Mar 25 17:03:16 2007 +++ src/sys/i386/i386/pmap.c Mon Mar 26 09:33:43 2007 @@ -2097,12 +2097,10 @@ #if defined(PMAP_DIAGNOSTIC) /* - * XXX This makes pmap_remove_all() illegal for non-managed pages! + * This makes pmap_remove_all() illegal for non-managed pages! */ - if (m->flags & PG_FICTITIOUS) { - panic("pmap_remove_all: illegal for unmanaged page, va: 0x%x", - VM_PAGE_TO_PHYS(m)); - } + if ((m->flags & PG_FICTITIOUS) != 0) + return; #endif mtx_assert(&vm_page_queue_mtx, MA_OWNED); sched_pin(); --- src.o/sys/amd64/amd64/pmap.c Sun Mar 25 01:24:40 2007 +++ src/sys/amd64/amd64/pmap.c Mon Mar 26 09:34:03 2007 @@ -2017,12 +2017,10 @@ #if defined(PMAP_DIAGNOSTIC) /* - * XXX This makes pmap_remove_all() illegal for non-managed pages! + * This makes pmap_remove_all() illegal for non-managed pages! */ - if (m->flags & PG_FICTITIOUS) { - panic("pmap_remove_all: illegal for unmanaged page, va: 0x%lx", - VM_PAGE_TO_PHYS(m)); - } + if (m->flags & PG_FICTITIOUS) + return; #endif mtx_assert(&vm_page_queue_mtx, MA_OWNED); while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) {