Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e9cfc147df99790a7d260e9d20b865fa31ec56da
Commit:     e9cfc147df99790a7d260e9d20b865fa31ec56da
Parent:     b641fe016a29fe2c0c7b0d717a5918e3f067a44f
Author:     Yoshinori Sato <[EMAIL PROTECTED]>
AuthorDate: Tue Dec 12 09:11:45 2006 +0900
Committer:  Paul Mundt <[EMAIL PROTECTED]>
CommitDate: Tue Dec 12 09:11:45 2006 +0900

    sh: Fixup SH-2 BUG() trap handling.
    
    This adds in support for the BUG() trap on SH-2.
    
    Signed-off-by: Yoshinori Sato <[EMAIL PROTECTED]>
    Signed-off-by: Paul Mundt <[EMAIL PROTECTED]>
---
 arch/sh/kernel/cpu/sh2/entry.S |   32 ++++++++++++++------------------
 1 files changed, 14 insertions(+), 18 deletions(-)

diff --git a/arch/sh/kernel/cpu/sh2/entry.S b/arch/sh/kernel/cpu/sh2/entry.S
index 34d51b3..d51fa5e 100644
--- a/arch/sh/kernel/cpu/sh2/entry.S
+++ b/arch/sh/kernel/cpu/sh2/entry.S
@@ -177,15 +177,21 @@ interrupt_entry:
 7:     .long   do_IRQ
 8:     .long   do_exception_error
        
-trap_entry:    
-       add     #-0x10,r9
+trap_entry:
+       /* verbose BUG trapa entry check */
+       mov     #0x3e,r8
+       cmp/ge  r8,r9
+       bf/s    1f
+        add    #-0x10,r9
+       add     #0x10,r9
+1:     
        shll2   r9                      ! TRA
        mov     #OFF_TRA,r8
        add     r15,r8
        mov.l   r9,@r8
        mov     r9,r8
 #ifdef CONFIG_TRACE_IRQFLAGS
-       mov.l   5f, r9
+       mov.l   2f, r9
        jsr     @r9
         nop
 #endif
@@ -194,12 +200,8 @@ trap_entry:
         nop
        
        .align  2
-1:     .long   syscall_exit
-2:     .long   break_point_trap_software
-3:     .long   NR_syscalls
-4:     .long   sys_call_table
 #ifdef CONFIG_TRACE_IRQFLAGS
-5:     .long   trace_hardirqs_on
+2:     .long   trace_hardirqs_on
 #endif
 
 #if defined(CONFIG_SH_STANDARD_BIOS)
@@ -264,7 +266,7 @@ ENTRY(address_error_handler)
 restore_all:
        cli
 #ifdef CONFIG_TRACE_IRQFLAGS
-       mov.l   3f, r0
+       mov.l   1f, r0
        jsr     @r0
         nop
 #endif
@@ -309,20 +311,14 @@ restore_all:
        mov.l   @r15,r15
        rte
         nop
-2:
-       mov.l   1f,r8
-       mov.l   2f,r9
-       jmp     @r9
-        lds    r8,pr
 
-       .align  2
+#ifdef CONFIG_TRACE_IRQFLAGS
+1:     .long   trace_hardirqs_off
+#endif
 $current_thread_info:
        .long   __current_thread_info
 $cpu_mode:     
        .long   __cpu_mode
-#ifdef CONFIG_TRACE_IRQFLAGS
-3:     .long   trace_hardirqs_off
-#endif
                
 ! common exception handler
 #include "../../entry-common.S"
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to