aboutsummaryrefslogtreecommitdiff
path: root/sys/vm
diff options
context:
space:
mode:
authorAlan Cox <alc@FreeBSD.org>2004-07-19 18:12:04 +0000
committerAlan Cox <alc@FreeBSD.org>2004-07-19 18:12:04 +0000
commite832aafc51a232b2cafb3c942a1ddecffe9ba8c9 (patch)
tree43540b6bd533888fdf9bfccbaea3f55304c9eb75 /sys/vm
parent3a63b92c1249fb1c53c7f34490dddc41ede585d0 (diff)
downloadsrc-e832aafc51a232b2cafb3c942a1ddecffe9ba8c9.tar.gz
src-e832aafc51a232b2cafb3c942a1ddecffe9ba8c9.zip
- Eliminate the pte object from the pmap. Instead, page table pages are
allocated as "no object" pages. Similar changes were made to the amd64 and i386 pmap last year. The primary reason being that maintaining a pte object leads to lock order violations. A secondary reason being that the pte object is redundant, i.e., the page table itself can be used to lookup page table pages. (Historical note: The pte object predates our ability to allocate "no object" pages. Thus, the pte object was a necessary evil.) - Unconditionally check the vm object lock's status in vm_page_remove(). Previously, this assertion could not be made on Alpha due to its use of a pte object.
Notes
Notes: svn path=/head/; revision=132414
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/vm_page.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
index 3a623343bcbb..06599d576167 100644
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -594,9 +594,7 @@ vm_page_remove(vm_page_t m)
mtx_assert(&vm_page_queue_mtx, MA_OWNED);
if (m->object == NULL)
return;
-#ifndef __alpha__
VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED);
-#endif
if ((m->flags & PG_BUSY) == 0) {
panic("vm_page_remove: page not busy");
}