summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2003-01-04 06:49:52 +0000
committeralc <alc@FreeBSD.org>2003-01-04 06:49:52 +0000
commite3e519cb434d8a9b70c0fe7519f81aae16007e5a (patch)
treeb83145e87e1f4ed22fbe1949e96aec7a9c9e36f3
parent5914915190225bdfb97f5d0327d6cc07993926a3 (diff)
downloadFreeBSD-src-e3e519cb434d8a9b70c0fe7519f81aae16007e5a.zip
FreeBSD-src-e3e519cb434d8a9b70c0fe7519f81aae16007e5a.tar.gz
Hold the page queues lock around pmap_remove_pte() in pmap_enter().
Submitted by: Arun Sharma <adsharma@unix-os.sc.intel.com>
-rw-r--r--sys/ia64/ia64/pmap.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/ia64/ia64/pmap.c b/sys/ia64/ia64/pmap.c
index 4165d73..1ffef00 100644
--- a/sys/ia64/ia64/pmap.c
+++ b/sys/ia64/ia64/pmap.c
@@ -1694,7 +1694,9 @@ pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot,
*/
if (opa) {
int error;
+ vm_page_lock_queues();
error = pmap_remove_pte(pmap, pte, va, 0, 0);
+ vm_page_unlock_queues();
if (error)
panic("pmap_enter: pte vanished, va: 0x%lx", va);
}
OpenPOWER on IntegriCloud