summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Cox <alc@FreeBSD.org>2003-10-08 05:35:12 +0000
committerAlan Cox <alc@FreeBSD.org>2003-10-08 05:35:12 +0000
commit669890eaeb860ce6c546207378b3fe4b03d4bb2e (patch)
treec3bdaaee2c7b0e765b3219b94ce2b3ee15487a7e
parentff76fc7f162a6a97c1dfbda9394842ebc21e6fde (diff)
Notes
-rw-r--r--sys/vm/vm_fault.c6
-rw-r--r--sys/vm/vm_page.c20
-rw-r--r--sys/vm/vm_page.h1
3 files changed, 7 insertions, 20 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index 5a4730764dcc..279358c7cc5d 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -738,7 +738,8 @@ readrest:
/*
* Oh, well, lets copy it.
*/
- vm_page_copy(fs.m, fs.first_m);
+ pmap_copy_page(fs.m, fs.first_m);
+ fs.first_m->valid = VM_PAGE_BITS_ALL;
}
if (fs.m) {
/*
@@ -1183,7 +1184,8 @@ vm_fault_copy_entry(dst_map, src_map, dst_entry, src_entry)
if (src_m == NULL)
panic("vm_fault_copy_wired: page missing");
- vm_page_copy(src_m, dst_m);
+ pmap_copy_page(src_m, dst_m);
+ dst_m->valid = VM_PAGE_BITS_ALL;
/*
* Enter it in the pmap...
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
index 0b283ddbf9e7..225ad202fc79 100644
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -373,18 +373,6 @@ vm_page_unhold(vm_page_t mem)
}
/*
- * vm_page_copy:
- *
- * Copy one page to another
- */
-void
-vm_page_copy(vm_page_t src_m, vm_page_t dest_m)
-{
- pmap_copy_page(src_m, dest_m);
- dest_m->valid = VM_PAGE_BITS_ALL;
-}
-
-/*
* vm_page_free:
*
* Free a page
@@ -1742,11 +1730,9 @@ vm_page_cowfault(vm_page_t m)
vm_page_free(mnew);
vm_page_insert(m, object, pindex);
} else { /* clear COW & copy page */
- if (so_zerocp_fullpage) {
- mnew->valid = VM_PAGE_BITS_ALL;
- } else {
- vm_page_copy(m, mnew);
- }
+ if (!so_zerocp_fullpage)
+ pmap_copy_page(m, mnew);
+ mnew->valid = VM_PAGE_BITS_ALL;
vm_page_dirty(mnew);
vm_page_flag_clear(mnew, PG_BUSY);
}
diff --git a/sys/vm/vm_page.h b/sys/vm/vm_page.h
index 7a51e034f638..d56f0867843b 100644
--- a/sys/vm/vm_page.h
+++ b/sys/vm/vm_page.h
@@ -342,7 +342,6 @@ void vm_page_io_start(vm_page_t m);
void vm_page_io_finish(vm_page_t m);
void vm_page_hold(vm_page_t mem);
void vm_page_unhold(vm_page_t mem);
-void vm_page_copy(vm_page_t src_m, vm_page_t dest_m);
void vm_page_free(vm_page_t m);
void vm_page_free_zero(vm_page_t m);
int vm_page_sleep_if_busy(vm_page_t m, int also_m_busy, const char *msg);