svn commit: r189750 - stable/7/sys/vm
John Baldwin
jhb at FreeBSD.org
Thu Mar 12 15:01:43 PDT 2009
Author: jhb
Date: Thu Mar 12 22:01:42 2009
New Revision: 189750
URL: http://svn.freebsd.org/changeset/base/189750
Log:
Disable the vm_page_startup assertion for now. It always fails on
platforms with superpages currently because the pages used by
vm_reserv_startup() are incorrectly included in the 'npages' count. I
haven't removed the assertion as I think this is a real bug, but the side
effect is just that some memory is wasted on never-used vm_page structures.
The assertion was removed from HEAD which is why the bug wasn't noticed
there (and thus this is a direct commit to 7).
Modified:
stable/7/sys/vm/vm_page.c
Modified: stable/7/sys/vm/vm_page.c
==============================================================================
--- stable/7/sys/vm/vm_page.c Thu Mar 12 20:41:52 2009 (r189749)
+++ stable/7/sys/vm/vm_page.c Thu Mar 12 22:01:42 2009 (r189750)
@@ -363,15 +363,21 @@ vm_page_startup(vm_offset_t vaddr)
vm_page_array[i].order = VM_NFREEORDER;
vm_page_array_size = page_range;
+#if 0
/*
* This assertion tests the hypothesis that npages and total are
* redundant. XXX
+ *
+ * XXX: This always fails if VM_NRESERVLEVEL > 0 because
+ * npages includes the memory for vm_reserv_startup() but
+ * page_range doesn't.
*/
page_range = 0;
for (i = 0; phys_avail[i + 1] != 0; i += 2)
page_range += atop(phys_avail[i + 1] - phys_avail[i]);
KASSERT(page_range == npages,
("vm_page_startup: inconsistent page counts"));
+#endif
/*
* Initialize the physical memory allocator.
More information about the svn-src-all
mailing list