summaryrefslogtreecommitdiffstats
path: root/sys/vm
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2009-06-24 04:45:03 +0000
committeralc <alc@FreeBSD.org>2009-06-24 04:45:03 +0000
commit323707be16260ec873618e15958a9c1c33cf0e85 (patch)
tree9a246139c9719e94baba971fd5d4e5e6daa274d5 /sys/vm
parent98f843fb56b000a36a722a3ab781a68bda1bd65d (diff)
downloadFreeBSD-src-323707be16260ec873618e15958a9c1c33cf0e85.zip
FreeBSD-src-323707be16260ec873618e15958a9c1c33cf0e85.tar.gz
The bits set in a page's dirty mask are a subset of the bits set in its
valid mask. Consequently, there is no need to perform a bit-wise and of the page's dirty and valid masks in order to determine which parts of a page are dirty and valid. Eliminate an unnecessary #include.
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/vm_object.c12
-rw-r--r--sys/vm/vm_pageout.c6
2 files changed, 8 insertions, 10 deletions
diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c
index 9e65cb4..61bf1e7 100644
--- a/sys/vm/vm_object.c
+++ b/sys/vm/vm_object.c
@@ -787,7 +787,7 @@ vm_object_page_clean(vm_object_t object, vm_pindex_t start, vm_pindex_t end, int
continue;
}
vm_page_test_dirty(p);
- if ((p->dirty & p->valid) == 0) {
+ if (p->dirty == 0) {
if (--scanlimit == 0)
break;
++tscan;
@@ -874,7 +874,7 @@ again:
}
vm_page_test_dirty(p);
- if ((p->dirty & p->valid) == 0) {
+ if (p->dirty == 0) {
p->oflags &= ~VPO_CLEANCHK;
continue;
}
@@ -947,7 +947,7 @@ vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int curgeneration,
(tp->busy != 0))
break;
vm_page_test_dirty(tp);
- if ((tp->dirty & tp->valid) == 0) {
+ if (tp->dirty == 0) {
tp->oflags &= ~VPO_CLEANCHK;
break;
}
@@ -971,7 +971,7 @@ vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int curgeneration,
(tp->busy != 0))
break;
vm_page_test_dirty(tp);
- if ((tp->dirty & tp->valid) == 0) {
+ if (tp->dirty == 0) {
tp->oflags &= ~VPO_CLEANCHK;
break;
}
@@ -999,7 +999,7 @@ vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int curgeneration,
vm_pageout_flush(ma, runlen, pagerflags);
for (i = 0; i < runlen; i++) {
- if (ma[i]->valid & ma[i]->dirty) {
+ if (ma[i]->dirty) {
pmap_remove_write(ma[i]);
ma[i]->oflags |= VPO_CLEANCHK;
@@ -1946,7 +1946,7 @@ again:
("vm_object_page_remove: page %p is fictitious", p));
if (clean_only && p->valid) {
pmap_remove_write(p);
- if (p->valid & p->dirty)
+ if (p->dirty)
continue;
}
pmap_remove_all(p);
diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c
index ce790f8..b64215b 100644
--- a/sys/vm/vm_pageout.c
+++ b/sys/vm/vm_pageout.c
@@ -105,8 +105,6 @@ __FBSDID("$FreeBSD$");
#include <vm/vm_extern.h>
#include <vm/uma.h>
-#include <machine/mutex.h>
-
/*
* System initialization
*/
@@ -350,7 +348,7 @@ more:
break;
}
vm_page_test_dirty(p);
- if ((p->dirty & p->valid) == 0 ||
+ if (p->dirty == 0 ||
p->queue != PQ_INACTIVE ||
p->wire_count != 0 || /* may be held by buf cache */
p->hold_count != 0) { /* may be undergoing I/O */
@@ -378,7 +376,7 @@ more:
break;
}
vm_page_test_dirty(p);
- if ((p->dirty & p->valid) == 0 ||
+ if (p->dirty == 0 ||
p->queue != PQ_INACTIVE ||
p->wire_count != 0 || /* may be held by buf cache */
p->hold_count != 0) { /* may be undergoing I/O */
OpenPOWER on IntegriCloud