summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkmacy <kmacy@FreeBSD.org>2010-04-25 23:51:05 +0000
committerkmacy <kmacy@FreeBSD.org>2010-04-25 23:51:05 +0000
commit653c8ae2c42bcc0f4f0e49074861edcc17bacad0 (patch)
tree654cbe662d3e28a5d4e7641d0d510266bbf69314
parentb3b8a6fcc767b2a2b0aa0dedc3154ab70ec9f9f2 (diff)
downloadFreeBSD-src-653c8ae2c42bcc0f4f0e49074861edcc17bacad0.zip
FreeBSD-src-653c8ae2c42bcc0f4f0e49074861edcc17bacad0.tar.gz
missed pv access before pmap lock
-rw-r--r--sys/amd64/amd64/pmap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index c4f1e99..d07292d 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -2793,9 +2793,9 @@ pmap_remove_all(vm_page_t m)
mtx_assert(&vm_page_queue_mtx, MA_OWNED);
pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
while ((pv = TAILQ_FIRST(&pvh->pv_list)) != NULL) {
- va = pv->pv_va;
pmap = PV_PMAP(pv);
PMAP_LOCK(pmap);
+ va = pv->pv_va;
pde = pmap_pde(pmap, va);
(void)pmap_demote_pde(pmap, pde, va);
PMAP_UNLOCK(pmap);
OpenPOWER on IntegriCloud