diff options
| author | Michal Simek <monstr@monstr.eu> | 2010-03-19 12:50:35 +0100 | 
|---|---|---|
| committer | Michal Simek <monstr@monstr.eu> | 2010-04-01 08:38:23 +0200 | 
| commit | bd1637d63e82aaf732ffbe907ba887fa12e82df4 (patch) | |
| tree | e81024ed210d7c604a20ce6b32f6c72701a2dc73 | |
| parent | b175bcfe31cba846d8bfa35a3a4820667f7af383 (diff) | |
microblaze: Remove additional resr and rear loading
RESR and REAR uses the same regs in whole file.
Signed-off-by: Michal Simek <monstr@monstr.eu>
| -rw-r--r-- | arch/microblaze/kernel/hw_exception_handler.S | 18 | 
1 files changed, 3 insertions, 15 deletions
| diff --git a/arch/microblaze/kernel/hw_exception_handler.S b/arch/microblaze/kernel/hw_exception_handler.S index a652addb9321..5d8c3de58b0c 100644 --- a/arch/microblaze/kernel/hw_exception_handler.S +++ b/arch/microblaze/kernel/hw_exception_handler.S @@ -562,20 +562,16 @@ ex_handler_done:  		 */  		mfs	r11, rpid  		nop -		mfs	r3, rear		/* Get faulting address */ -		nop  		/* If we are faulting a kernel address, we have to use the  		 * kernel page tables.  		 */ -		ori	r4, r0, CONFIG_KERNEL_START -		cmpu	r4, r3, r4 -		bgti	r4, ex3 +		ori	r5, r0, CONFIG_KERNEL_START +		cmpu	r5, r3, r5 +		bgti	r5, ex3  		/* First, check if it was a zone fault (which means a user  		 * tried to access a kernel or read-protected page - always  		 * a SEGV). All other faults here must be stores, so no  		 * need to check ESR_S as well. */ -		mfs	r4, resr -		nop  		andi	r4, r4, 0x800		/* ESR_Z - zone protection */  		bnei	r4, ex2 @@ -590,8 +586,6 @@ ex_handler_done:  		 * tried to access a kernel or read-protected page - always  		 * a SEGV). All other faults here must be stores, so no  		 * need to check ESR_S as well. */ -		mfs	r4, resr -		nop  		andi	r4, r4, 0x800		/* ESR_Z */  		bnei	r4, ex2  		/* get current task address */ @@ -666,8 +660,6 @@ ex_handler_done:  		 * R3 = ESR  		 */ -		mfs	r3, rear		/* Get faulting address */ -		nop  		RESTORE_STATE;  		bri	page_fault_instr_trap @@ -682,8 +674,6 @@ ex_handler_done:  		 */  		mfs	r11, rpid  		nop -		mfs	r3, rear		/* Get faulting address */ -		nop  		/* If we are faulting a kernel address, we have to use the  		 * kernel page tables. */ @@ -754,8 +744,6 @@ ex_handler_done:  		 */  		mfs	r11, rpid  		nop -		mfs	r3, rear		/* Get faulting address */ -		nop  		/* If we are faulting a kernel address, we have to use the  		 * kernel page tables. | 
