| 
					
				 | 
			
			
				@@ -416,7 +416,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  	/* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 --- a/arch/mips/mm/tlbex.c 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 +++ b/arch/mips/mm/tlbex.c 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@ -943,6 +943,9 @@ build_get_pgde32(u32 **p, unsigned int t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@ -960,6 +960,9 @@ build_get_pgde32(u32 **p, unsigned int t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		uasm_i_srl(p, ptr, ptr, SMP_CPUID_PTRSHIFT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		uasm_i_addu(p, ptr, tmp, ptr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #else 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -426,7 +426,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		UASM_i_LA_mostly(p, ptr, pgdc); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		uasm_i_mfc0(p, tmp, C0_BADVADDR); /* get faulting address */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@ -1284,6 +1287,9 @@ static void build_r4000_tlb_refill_handl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@ -1301,6 +1304,9 @@ static void build_r4000_tlb_refill_handl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #ifdef CONFIG_64BIT 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		build_get_pmde64(&p, &l, &r, K0, K1); /* get pmd in K1 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #else 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -436,7 +436,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		build_get_pgde32(&p, K0, K1); /* get pgd in K1 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@ -1295,6 +1301,9 @@ static void build_r4000_tlb_refill_handl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@ -1312,6 +1318,9 @@ static void build_r4000_tlb_refill_handl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		build_update_entries(&p, K0, K1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		build_tlb_write_entry(&p, &l, &r, tlb_random); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		uasm_l_leave(&l, p); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -446,7 +446,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  		uasm_i_eret(&p); /* return from trap */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #ifdef CONFIG_MIPS_HUGE_TLB_SUPPORT 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@ -1871,6 +1880,9 @@ build_r4000_tlbchange_handler_head(u32 * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@ -1888,6 +1897,9 @@ build_r4000_tlbchange_handler_head(u32 * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #ifdef CONFIG_64BIT 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  	build_get_pmde64(p, l, r, wr.r1, wr.r2); /* get pmd in ptr */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #else 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -456,7 +456,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  	build_get_pgde32(p, wr.r1, wr.r2); /* get pgd in ptr */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  #endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@ -1917,6 +1929,9 @@ build_r4000_tlbchange_handler_tail(u32 * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@ -1934,6 +1946,9 @@ build_r4000_tlbchange_handler_tail(u32 * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  	build_tlb_write_entry(p, l, r, tlb_indexed); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  	uasm_l_leave(l, *p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  	build_restore_work_registers(p); 
			 |