svn commit: r234522 - user/attilio/vmcontention/sys/vm
Attilio Rao
attilio at FreeBSD.org
Sat Apr 21 00:32:56 UTC 2012
Author: attilio
Date: Sat Apr 21 00:32:56 2012
New Revision: 234522
URL: http://svn.freebsd.org/changeset/base/234522
Log:
Fix a brain-o.
vm_page_lookup_cache() is not exported and cannot be used arbitrarely.
Reported by: pho
Modified:
user/attilio/vmcontention/sys/vm/vm_mmap.c
Modified: user/attilio/vmcontention/sys/vm/vm_mmap.c
==============================================================================
--- user/attilio/vmcontention/sys/vm/vm_mmap.c Sat Apr 21 00:28:29 2012 (r234521)
+++ user/attilio/vmcontention/sys/vm/vm_mmap.c Sat Apr 21 00:32:56 2012 (r234522)
@@ -81,6 +81,7 @@ __FBSDID("$FreeBSD$");
#include <vm/vm_pageout.h>
#include <vm/vm_extern.h>
#include <vm/vm_page.h>
+#include <vm/vm_radix.h>
#include <vm/vnode_pager.h>
#ifdef HWPMC_HOOKS
@@ -887,11 +888,13 @@ RestartScan:
object->type == OBJT_VNODE) {
pindex = OFF_TO_IDX(current->offset +
(addr - current->start));
- m = vm_page_lookup(object, pindex);
+ m = vm_radix_lookup(&object->rtree,
+ pindex, VM_RADIX_ANY);
+
+ /* Lock just for consistency. */
mtx_lock(&vm_page_queue_free_mtx);
- if (m == NULL &&
- vm_page_cache_lookup(object,
- pindex) != NULL)
+ if (m != NULL &&
+ (m->flags & PG_CACHED) != 0)
mincoreinfo = MINCORE_INCORE;
mtx_unlock(&vm_page_queue_free_mtx);
if (m != NULL && m->valid == 0)
More information about the svn-src-user
mailing list