diff options
author | alc <alc@FreeBSD.org> | 2003-08-17 04:48:21 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2003-08-17 04:48:21 +0000 |
commit | 93e442c71c6a2c58cc277afd732fa1984c44e238 (patch) | |
tree | ca9c9e67042d021ce09c50f61995543d8de4cd6a /sys/amd64 | |
parent | 4194d813c1b3ce78f06af0eaef02acb376c94743 (diff) | |
download | FreeBSD-src-93e442c71c6a2c58cc277afd732fa1984c44e238.zip FreeBSD-src-93e442c71c6a2c58cc277afd732fa1984c44e238.tar.gz |
In pmap_copy(), since we have the page table page's physical address
in hand, use PHYS_TO_VM_PAGE() rather than vm_page_lookup().
Diffstat (limited to 'sys/amd64')
-rw-r--r-- | sys/amd64/amd64/pmap.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 1927f81..3e1a2b4 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -2302,9 +2302,8 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, vm_size_t len, continue; } - srcmpte = vm_page_lookup(src_pmap->pm_pteobj, ptepindex); - if ((srcmpte == NULL) || - (srcmpte->hold_count == 0) || (srcmpte->flags & PG_BUSY)) + srcmpte = PHYS_TO_VM_PAGE(srcptepaddr); + if (srcmpte->hold_count == 0 || (srcmpte->flags & PG_BUSY)) continue; if (pdnxt > end_addr) |