Commit 94e3d923 authored by Balbir Singh's avatar Balbir Singh Committed by Michael Ellerman

powerpc: Fix kgdb on little endian ppc64le

I spent some time trying to use kgdb and debugged my inability to
resume from kgdb_handle_breakpoint(). NIP is not incremented
and that leads to a loop in the debugger.

I've tested this lightly on a virtual instance with KDB enabled.
After the patch, I am able to get the "go" command to work as
expected.
Signed-off-by: default avatarBalbir Singh <bsingharora@gmail.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent e4f226b1
...@@ -445,7 +445,11 @@ int kgdb_arch_handle_exception(int vector, int signo, int err_code, ...@@ -445,7 +445,11 @@ int kgdb_arch_handle_exception(int vector, int signo, int err_code,
* Global data * Global data
*/ */
struct kgdb_arch arch_kgdb_ops = { struct kgdb_arch arch_kgdb_ops = {
#ifdef __LITTLE_ENDIAN__
.gdb_bpt_instr = {0x08, 0x10, 0x82, 0x7d},
#else
.gdb_bpt_instr = {0x7d, 0x82, 0x10, 0x08}, .gdb_bpt_instr = {0x7d, 0x82, 0x10, 0x08},
#endif
}; };
static int kgdb_not_implemented(struct pt_regs *regs) static int kgdb_not_implemented(struct pt_regs *regs)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment