svn commit: r209702 - head/sys/vm
Konstantin Belousov
kib at FreeBSD.org
Sun Jul 4 19:02:33 UTC 2010
Author: kib
Date: Sun Jul 4 19:02:32 2010
New Revision: 209702
URL: http://svn.freebsd.org/changeset/base/209702
Log:
Several cleanups for the r209686:
- remove unused defines;
- remove unused curgeneration argument for vm_object_page_collect_flush();
- always assert that vm_object_page_clean() is called for OBJT_VNODE;
- move vm_page_find_least() into for() statement initial clause.
Submitted by: alc
Modified:
head/sys/vm/vm_object.c
Modified: head/sys/vm/vm_object.c
==============================================================================
--- head/sys/vm/vm_object.c Sun Jul 4 18:49:15 2010 (r209701)
+++ head/sys/vm/vm_object.c Sun Jul 4 19:02:32 2010 (r209702)
@@ -96,17 +96,13 @@ __FBSDID("$FreeBSD$");
#include <vm/vm_reserv.h>
#include <vm/uma.h>
-#define EASY_SCAN_FACTOR 8
-
-#define MSYNC_FLUSH_HARDSEQ 0x01
-#define MSYNC_FLUSH_SOFTSEQ 0x02
-
static int old_msync;
SYSCTL_INT(_vm, OID_AUTO, old_msync, CTLFLAG_RW, &old_msync, 0,
"Use old (insecure) msync behavior");
+static int vm_object_page_collect_flush(vm_object_t object, vm_page_t p,
+ int pagerflags);
static void vm_object_qcollapse(vm_object_t object);
-static int vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int curgeneration, int pagerflags);
static void vm_object_vndeallocate(vm_object_t object);
/*
@@ -764,10 +760,10 @@ vm_object_page_clean(vm_object_t object,
mtx_assert(&vm_page_queue_mtx, MA_NOTOWNED);
VM_OBJECT_LOCK_ASSERT(object, MA_OWNED);
+ KASSERT(object->type == OBJT_VNODE, ("Not a vnode object"));
if ((object->flags & OBJ_MIGHTBEDIRTY) == 0 ||
object->resident_page_count == 0)
return;
- KASSERT(object->type == OBJT_VNODE, ("Not a vnode object"));
pagerflags = (flags & (OBJPC_SYNC | OBJPC_INVAL)) != 0 ?
VM_PAGER_PUT_SYNC : VM_PAGER_CLUSTER_OK;
@@ -798,10 +794,9 @@ vm_object_page_clean(vm_object_t object,
vm_object_clear_flag(object, OBJ_MIGHTBEDIRTY);
rescan:
- p = vm_page_find_least(object, start);
curgeneration = object->generation;
- for (; p != NULL; p = np) {
+ for (p = vm_page_find_least(object, start); p != NULL; p = np) {
pi = p->pindex;
if (pi >= tend)
break;
@@ -825,8 +820,7 @@ rescan:
(p->oflags & VPO_NOSYNC) != 0)
continue;
- n = vm_object_page_collect_flush(object, p,
- curgeneration, pagerflags);
+ n = vm_object_page_collect_flush(object, p, pagerflags);
KASSERT(n > 0, ("vm_object_page_collect_flush failed"));
if (object->generation != curgeneration)
goto rescan;
@@ -840,8 +834,7 @@ rescan:
}
static int
-vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int curgeneration,
- int pagerflags)
+vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int pagerflags)
{
int runlen;
int maxf;
More information about the svn-src-head
mailing list