diff options
author | Ted Unangst <tedu@cvs.openbsd.org> | 2005-11-29 05:37:15 +0000 |
---|---|---|
committer | Ted Unangst <tedu@cvs.openbsd.org> | 2005-11-29 05:37:15 +0000 |
commit | b2b49fdc27fd2a4c2ef54b3853ea3a97b5001e1d (patch) | |
tree | 9c64d99064192929acd5c8847a25a9257cecca27 /sys/uvm/uvm_fault.c | |
parent | c02f48c0aca62b7b8a4b575d9c12a043a0243ab6 (diff) |
apply patch from david hill for two netbsd prs:
14060 skip MADV_SEQUENTIAL if refaulting
18037 missing pageactivate
tested for some time by jolan krw
Diffstat (limited to 'sys/uvm/uvm_fault.c')
-rw-r--r-- | sys/uvm/uvm_fault.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/uvm/uvm_fault.c b/sys/uvm/uvm_fault.c index a33d274f1f7..712dab56773 100644 --- a/sys/uvm/uvm_fault.c +++ b/sys/uvm/uvm_fault.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uvm_fault.c,v 1.35 2005/10/23 01:42:22 pedro Exp $ */ +/* $OpenBSD: uvm_fault.c,v 1.36 2005/11/29 05:37:14 tedu Exp $ */ /* $NetBSD: uvm_fault.c,v 1.51 2000/08/06 00:22:53 thorpej Exp $ */ /* @@ -771,7 +771,7 @@ ReFault: * now and then forget about them (for the rest of the fault). */ - if (ufi.entry->advice == MADV_SEQUENTIAL) { + if (ufi.entry->advice == MADV_SEQUENTIAL && nback != 0) { UVMHIST_LOG(maphist, " MADV_SEQUENTIAL: flushing backpages", 0,0,0,0); @@ -1151,6 +1151,7 @@ ReFault: anon->u.an_page->uanon = NULL; /* in case we owned */ anon->u.an_page->pqflags &= ~PQ_ANON; + uvm_pageactivate(pg); uvm_unlock_pageq(); if (uobj) { simple_unlock(&uobj->vmobjlock); |