Index: kernel/arch/sparc64/src/mm/sun4u/tlb.c
===================================================================
--- kernel/arch/sparc64/src/mm/sun4u/tlb.c	(revision 50177dcd51d58a030da7707ce62ab9fad45123a6)
+++ kernel/arch/sparc64/src/mm/sun4u/tlb.c	(revision 9aed1447765df907632291e993be7acf559d0057)
@@ -206,5 +206,4 @@
 	pte_t *t;
 
-	page_table_lock(AS, true);
 	t = page_mapping_find(AS, page_16k, true);
 	if (t && PTE_EXECUTABLE(t)) {
@@ -218,5 +217,4 @@
 		itsb_pte_copy(t, index);
 #endif
-		page_table_unlock(AS, true);
 	} else {
 		/*
@@ -224,5 +222,4 @@
 		 * handler.
 		 */
-		page_table_unlock(AS, true);
 		if (as_page_fault(page_16k, PF_ACCESS_EXEC, istate) ==
 		    AS_PF_FAULT) {
@@ -274,5 +271,4 @@
 	}
 
-	page_table_lock(AS, true);
 	t = page_mapping_find(AS, page_16k, true);
 	if (t) {
@@ -286,5 +282,4 @@
 		dtsb_pte_copy(t, index, true);
 #endif
-		page_table_unlock(AS, true);
 	} else {
 		/*
@@ -292,5 +287,4 @@
 		 * handler.
 		 */		
-		page_table_unlock(AS, true);
 		if (as_page_fault(page_16k, PF_ACCESS_READ, istate) ==
 		    AS_PF_FAULT) {
@@ -318,5 +312,4 @@
 	index = tag.vpn % MMU_PAGES_PER_PAGE;	/* 16K-page emulation */
 
-	page_table_lock(AS, true);
 	t = page_mapping_find(AS, page_16k, true);
 	if (t && PTE_WRITABLE(t)) {
@@ -334,5 +327,4 @@
 		dtsb_pte_copy(t, index, false);
 #endif
-		page_table_unlock(AS, true);
 	} else {
 		/*
@@ -340,5 +332,4 @@
 		 * handler.
 		 */		
-		page_table_unlock(AS, true);
 		if (as_page_fault(page_16k, PF_ACCESS_WRITE, istate) ==
 		    AS_PF_FAULT) {
Index: kernel/arch/sparc64/src/mm/sun4v/tlb.c
===================================================================
--- kernel/arch/sparc64/src/mm/sun4v/tlb.c	(revision 50177dcd51d58a030da7707ce62ab9fad45123a6)
+++ kernel/arch/sparc64/src/mm/sun4v/tlb.c	(revision 9aed1447765df907632291e993be7acf559d0057)
@@ -218,5 +218,4 @@
 	pte_t *t;
 
-	page_table_lock(AS, true);
 	t = page_mapping_find(AS, va, true);
 
@@ -231,5 +230,4 @@
 		itsb_pte_copy(t);
 #endif
-		page_table_unlock(AS, true);
 	} else {
 		/*
@@ -237,5 +235,4 @@
 		 * handler.
 		 */
-		page_table_unlock(AS, true);
 		if (as_page_fault(va, PF_ACCESS_EXEC, istate) == AS_PF_FAULT) {
 			do_fast_instruction_access_mmu_miss_fault(istate,
@@ -274,5 +271,4 @@
 	}
 
-	page_table_lock(AS, true);
 	t = page_mapping_find(AS, va, true);
 	if (t) {
@@ -286,5 +282,4 @@
 		dtsb_pte_copy(t, true);
 #endif
-		page_table_unlock(AS, true);
 	} else {
 		/*
@@ -292,5 +287,4 @@
 		 * handler.
 		 */		
-		page_table_unlock(AS, true);
 		if (as_page_fault(va, PF_ACCESS_READ, istate) == AS_PF_FAULT) {
 			do_fast_data_access_mmu_miss_fault(istate, page_and_ctx,
@@ -316,5 +310,4 @@
 	uint16_t ctx = DMISS_CONTEXT(page_and_ctx);
 
-	page_table_lock(AS, true);
 	t = page_mapping_find(AS, va, true);
 	if (t && PTE_WRITABLE(t)) {
@@ -331,5 +324,4 @@
 		dtsb_pte_copy(t, false);
 #endif
-		page_table_unlock(AS, true);
 	} else {
 		/*
@@ -337,5 +329,4 @@
 		 * handler.
 		 */		
-		page_table_unlock(AS, true);
 		if (as_page_fault(va, PF_ACCESS_WRITE, istate) == AS_PF_FAULT) {
 			do_fast_data_access_protection_fault(istate, page_and_ctx,
