From cd5b9d77bf2d948f0c5a94ac987db0c9a9e69bd5 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Sun, 7 Jun 2009 15:07:25 -0400 Subject: [PATCH] --- yaml --- r: 151136 b: refs/heads/master c: 6510a20e1b1a3a5703429a09d03adf44882ae373 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/blackfin/kernel/traps.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index eb7af3e52063..c3d6fe32da8b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 47e9dedb720364e0adff0e99960fa294c6161f71 +refs/heads/master: 6510a20e1b1a3a5703429a09d03adf44882ae373 diff --git a/trunk/arch/blackfin/kernel/traps.c b/trunk/arch/blackfin/kernel/traps.c index 2405f193224e..ed7127b1b9f9 100644 --- a/trunk/arch/blackfin/kernel/traps.c +++ b/trunk/arch/blackfin/kernel/traps.c @@ -309,7 +309,7 @@ asmlinkage void trap_c(struct pt_regs *fp) CHK_DEBUGGER_TRAP_MAYBE(); /* Check if this is a breakpoint in kernel space */ if (fp->ipend & 0xffc0) - return; + goto traps_done; else break; /* 0x03 - User Defined, userspace stack overflow */ @@ -325,7 +325,7 @@ asmlinkage void trap_c(struct pt_regs *fp) info.si_code = TRAP_ILLTRAP; sig = SIGTRAP; CHK_DEBUGGER_TRAP(); - return; + goto traps_done; #endif /* 0x04 - User Defined */ /* 0x05 - User Defined */ @@ -355,7 +355,7 @@ asmlinkage void trap_c(struct pt_regs *fp) CHK_DEBUGGER_TRAP_MAYBE(); /* Check if this is a single step in kernel space */ if (fp->ipend & 0xffc0) - return; + goto traps_done; else break; /* 0x11 - Trace Buffer Full, handled here */ @@ -459,7 +459,7 @@ asmlinkage void trap_c(struct pt_regs *fp) CHK_DEBUGGER_TRAP_MAYBE(); /* Check if this is a watchpoint in kernel space */ if (fp->ipend & 0xffc0) - return; + goto traps_done; else break; #ifdef CONFIG_BF535 @@ -624,8 +624,8 @@ asmlinkage void trap_c(struct pt_regs *fp) if (ANOMALY_05000461 && trapnr == VEC_HWERR && !access_ok(VERIFY_READ, fp->pc, 8)) fp->pc = SAFE_USER_INSTRUCTION; + traps_done: trace_buffer_restore(j); - return; } /* Typical exception handling routines */