aboutsummaryrefslogtreecommitdiff
path: root/sys/sparc64/include
diff options
context:
space:
mode:
authorAlan Cox <alc@FreeBSD.org>2012-05-29 01:52:38 +0000
committerAlan Cox <alc@FreeBSD.org>2012-05-29 01:52:38 +0000
commitb10ed4a911b5a7acfb2730bfb8029849df90ec99 (patch)
tree8c55904de8fb74021195b0a4ee4710059cf8304f /sys/sparc64/include
parent544c5e5b533574625e9921209ee3ceb1ee3d22d0 (diff)
downloadsrc-b10ed4a911b5a7acfb2730bfb8029849df90ec99.tar.gz
src-b10ed4a911b5a7acfb2730bfb8029849df90ec99.zip
Replace all uses of the vm page queues lock by a r/w lock that is private
to this pmap.c. This new r/w lock is used primarily to synchronize access to the TTE lists. However, it will be used in a somewhat unconventional way. As finer-grained TTE list locking is added to each of the pmap functions that acquire this r/w lock, its acquisition will be changed from write to read, enabling concurrent execution of the pmap functions with finer-grained locking. Reviewed by: attilio Tested by: flo MFC after: 10 days
Notes
Notes: svn path=/head/; revision=236214
Diffstat (limited to 'sys/sparc64/include')
-rw-r--r--sys/sparc64/include/pmap.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/sparc64/include/pmap.h b/sys/sparc64/include/pmap.h
index 87c56a303727..72dbaadd45c1 100644
--- a/sys/sparc64/include/pmap.h
+++ b/sys/sparc64/include/pmap.h
@@ -43,6 +43,7 @@
#include <sys/_cpuset.h>
#include <sys/_lock.h>
#include <sys/_mutex.h>
+#include <sys/_rwlock.h>
#include <machine/cache.h>
#include <machine/tte.h>
@@ -101,6 +102,7 @@ void pmap_set_kctx(void);
extern struct pmap kernel_pmap_store;
#define kernel_pmap (&kernel_pmap_store)
+extern struct rwlock tte_list_global_lock;
extern vm_paddr_t phys_avail[];
extern vm_offset_t virtual_avail;
extern vm_offset_t virtual_end;