diff options
author | alc <alc@FreeBSD.org> | 2003-01-04 06:49:52 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2003-01-04 06:49:52 +0000 |
commit | e3e519cb434d8a9b70c0fe7519f81aae16007e5a (patch) | |
tree | b83145e87e1f4ed22fbe1949e96aec7a9c9e36f3 /sys | |
parent | 5914915190225bdfb97f5d0327d6cc07993926a3 (diff) | |
download | FreeBSD-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>
Diffstat (limited to 'sys')
-rw-r--r-- | sys/ia64/ia64/pmap.c | 2 |
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); } |