diff options
author | Sonic Zhang <sonic.zhang@analog.com> | 2008-10-09 02:04:41 -0400 |
---|---|---|
committer | Bryan Wu <cooloney@kernel.org> | 2008-10-09 02:04:41 -0400 |
commit | 27707d3e43e3a9c53e75cd7769f3ef74b1d56625 (patch) | |
tree | 36da010b2c4c07119795145adf36559c90856809 /arch | |
parent | 5e9e7687cbc016ac36b6825f79d78213319331d9 (diff) |
Blackfin arch: Fix bug - kernel build with config kernel debugging with remote gdb fails
Add some comment and fix duplicated VEC_EXCPT02
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/blackfin/kernel/traps.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/arch/blackfin/kernel/traps.c b/arch/blackfin/kernel/traps.c index 89cff2c7e8b1..1a3c4daf557a 100644 --- a/arch/blackfin/kernel/traps.c +++ b/arch/blackfin/kernel/traps.c | |||
@@ -284,15 +284,6 @@ asmlinkage void trap_c(struct pt_regs *fp) | |||
284 | return; | 284 | return; |
285 | else | 285 | else |
286 | break; | 286 | break; |
287 | #ifdef CONFIG_KGDB | ||
288 | case VEC_EXCPT02 : /* gdb connection */ | ||
289 | info.si_code = TRAP_ILLTRAP; | ||
290 | sig = SIGTRAP; | ||
291 | CHK_DEBUGGER_TRAP(); | ||
292 | return; | ||
293 | #else | ||
294 | /* 0x02 - User Defined, Caught by default */ | ||
295 | #endif | ||
296 | /* 0x03 - User Defined, userspace stack overflow */ | 287 | /* 0x03 - User Defined, userspace stack overflow */ |
297 | case VEC_EXCPT03: | 288 | case VEC_EXCPT03: |
298 | info.si_code = SEGV_STACKFLOW; | 289 | info.si_code = SEGV_STACKFLOW; |
@@ -300,6 +291,14 @@ asmlinkage void trap_c(struct pt_regs *fp) | |||
300 | printk(KERN_NOTICE EXC_0x03(KERN_NOTICE)); | 291 | printk(KERN_NOTICE EXC_0x03(KERN_NOTICE)); |
301 | CHK_DEBUGGER_TRAP_MAYBE(); | 292 | CHK_DEBUGGER_TRAP_MAYBE(); |
302 | break; | 293 | break; |
294 | /* 0x02 - KGDB initial connection and break signal trap */ | ||
295 | case VEC_EXCPT02: | ||
296 | #ifdef CONFIG_KGDB | ||
297 | info.si_code = TRAP_ILLTRAP; | ||
298 | sig = SIGTRAP; | ||
299 | CHK_DEBUGGER_TRAP(); | ||
300 | return; | ||
301 | #endif | ||
303 | /* 0x04 - User Defined */ | 302 | /* 0x04 - User Defined */ |
304 | /* 0x05 - User Defined */ | 303 | /* 0x05 - User Defined */ |
305 | /* 0x06 - User Defined */ | 304 | /* 0x06 - User Defined */ |
@@ -312,11 +311,9 @@ asmlinkage void trap_c(struct pt_regs *fp) | |||
312 | /* 0x0D - User Defined */ | 311 | /* 0x0D - User Defined */ |
313 | /* 0x0E - User Defined */ | 312 | /* 0x0E - User Defined */ |
314 | /* 0x0F - User Defined */ | 313 | /* 0x0F - User Defined */ |
315 | /* | 314 | /* If we got here, it is most likely that someone was trying to use a |
316 | * If we got here, it is most likely that someone was trying to use a | ||
317 | * custom exception handler, and it is not actually installed properly | 315 | * custom exception handler, and it is not actually installed properly |
318 | */ | 316 | */ |
319 | case VEC_EXCPT02: | ||
320 | case VEC_EXCPT04 ... VEC_EXCPT15: | 317 | case VEC_EXCPT04 ... VEC_EXCPT15: |
321 | info.si_code = ILL_ILLPARAOP; | 318 | info.si_code = ILL_ILLPARAOP; |
322 | sig = SIGILL; | 319 | sig = SIGILL; |