diff options
author | kmacy <kmacy@FreeBSD.org> | 2010-04-25 23:51:05 +0000 |
---|---|---|
committer | kmacy <kmacy@FreeBSD.org> | 2010-04-25 23:51:05 +0000 |
commit | 653c8ae2c42bcc0f4f0e49074861edcc17bacad0 (patch) | |
tree | 654cbe662d3e28a5d4e7641d0d510266bbf69314 | |
parent | b3b8a6fcc767b2a2b0aa0dedc3154ab70ec9f9f2 (diff) | |
download | FreeBSD-src-653c8ae2c42bcc0f4f0e49074861edcc17bacad0.zip FreeBSD-src-653c8ae2c42bcc0f4f0e49074861edcc17bacad0.tar.gz |
missed pv access before pmap lock
-rw-r--r-- | sys/amd64/amd64/pmap.c | 2 |
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); |