diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-04-02 22:45:05 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-04-02 22:45:05 -0400 |
| commit | 5e123e5d9bf8c4ae44121ffe5e844adeb30ff21b (patch) | |
| tree | 55545dab00ec8d15ba75764f80459944b6fd204a /drivers | |
| parent | 24b99d1576e6e330c2eba534a793b6e6dcb37f6b (diff) | |
| parent | 4da75b9ceac6939cd76830ec9581bef5bb398ad3 (diff) | |
Merge branch 'kgdb-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb
* 'kgdb-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:
kgdb: Turn off tracing while in the debugger
kgdb: use atomic_inc and atomic_dec instead of atomic_set
kgdb: eliminate kgdb_wait(), all cpus enter the same way
kgdbts,sh: Add in breakpoint pc offset for superh
kgdb: have ebin2mem call probe_kernel_write once
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/misc/kgdbts.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/misc/kgdbts.c b/drivers/misc/kgdbts.c index fcb6ec1af173..72450237a0f4 100644 --- a/drivers/misc/kgdbts.c +++ b/drivers/misc/kgdbts.c | |||
| @@ -295,6 +295,10 @@ static int check_and_rewind_pc(char *put_str, char *arg) | |||
| 295 | /* On x86 a breakpoint stop requires it to be decremented */ | 295 | /* On x86 a breakpoint stop requires it to be decremented */ |
| 296 | if (addr + 1 == kgdbts_regs.ip) | 296 | if (addr + 1 == kgdbts_regs.ip) |
| 297 | offset = -1; | 297 | offset = -1; |
| 298 | #elif defined(CONFIG_SUPERH) | ||
| 299 | /* On SUPERH a breakpoint stop requires it to be decremented */ | ||
| 300 | if (addr + 2 == kgdbts_regs.pc) | ||
| 301 | offset = -2; | ||
| 298 | #endif | 302 | #endif |
| 299 | if (strcmp(arg, "silent") && | 303 | if (strcmp(arg, "silent") && |
| 300 | instruction_pointer(&kgdbts_regs) + offset != addr) { | 304 | instruction_pointer(&kgdbts_regs) + offset != addr) { |
| @@ -305,6 +309,8 @@ static int check_and_rewind_pc(char *put_str, char *arg) | |||
| 305 | #ifdef CONFIG_X86 | 309 | #ifdef CONFIG_X86 |
| 306 | /* On x86 adjust the instruction pointer if needed */ | 310 | /* On x86 adjust the instruction pointer if needed */ |
| 307 | kgdbts_regs.ip += offset; | 311 | kgdbts_regs.ip += offset; |
| 312 | #elif defined(CONFIG_SUPERH) | ||
| 313 | kgdbts_regs.pc += offset; | ||
| 308 | #endif | 314 | #endif |
| 309 | return 0; | 315 | return 0; |
| 310 | } | 316 | } |
