diff options
author | Alan Cox <alc@FreeBSD.org> | 2012-05-29 01:52:38 +0000 |
---|---|---|
committer | Alan Cox <alc@FreeBSD.org> | 2012-05-29 01:52:38 +0000 |
commit | b10ed4a911b5a7acfb2730bfb8029849df90ec99 (patch) | |
tree | 8c55904de8fb74021195b0a4ee4710059cf8304f /sys/sparc64/include | |
parent | 544c5e5b533574625e9921209ee3ceb1ee3d22d0 (diff) | |
download | src-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.h | 2 |
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; |