Message ID | 1280308724-8402-1-git-send-email-monstr@monstr.eu (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
On 07/28/2010 04:18 AM, Michal Simek wrote: > kgdb_handle_breakpoint checks the first arch_kgdb_breakpoint > which is not known by gdb that's why is necessary jump over > it. The jump lenght is equal to BREAK_INSTR_SIZE that's > why is cleaner to use defined macro instead of hardcoded > non-described offset. > > Seems fine to me. I'll add this to the kgdb merge queue for 2.6.36. Jason. > Signed-off-by: Michal Simek <monstr@monstr.eu> > CC: Jason Wessel <jason.wessel@windriver.com> > CC: Benjamin Herrenschmidt <benh@kernel.crashing.org> > CC: linuxppc-dev@ozlabs.org > --- > arch/powerpc/kernel/kgdb.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c > index 82a7b22..7f61a3a 100644 > --- a/arch/powerpc/kernel/kgdb.c > +++ b/arch/powerpc/kernel/kgdb.c > @@ -129,7 +129,7 @@ static int kgdb_handle_breakpoint(struct pt_regs *regs) > return 0; > > if (*(u32 *) (regs->nip) == *(u32 *) (&arch_kgdb_ops.gdb_bpt_instr)) > - regs->nip += 4; > + regs->nip += BREAK_INSTR_SIZE; > > return 1; > } >
On Wed, 2010-07-28 at 11:18 +0200, Michal Simek wrote: > kgdb_handle_breakpoint checks the first arch_kgdb_breakpoint > which is not known by gdb that's why is necessary jump over > it. The jump lenght is equal to BREAK_INSTR_SIZE that's > why is cleaner to use defined macro instead of hardcoded > non-described offset. > > Signed-off-by: Michal Simek <monstr@monstr.eu> > CC: Jason Wessel <jason.wessel@windriver.com> > CC: Benjamin Herrenschmidt <benh@kernel.crashing.org> > CC: linuxppc-dev@ozlabs.org > --- > arch/powerpc/kernel/kgdb.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c > index 82a7b22..7f61a3a 100644 > --- a/arch/powerpc/kernel/kgdb.c > +++ b/arch/powerpc/kernel/kgdb.c > @@ -129,7 +129,7 @@ static int kgdb_handle_breakpoint(struct pt_regs *regs) > return 0; > > if (*(u32 *) (regs->nip) == *(u32 *) (&arch_kgdb_ops.gdb_bpt_instr)) > - regs->nip += 4; > + regs->nip += BREAK_INSTR_SIZE; Except to powerpc fokls, who intuitively know what nip + 4 means, but will have to lookup what BREAK_INSTR_SIZE is to be sure. But I'm being nit-picky :) cheers
diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c index 82a7b22..7f61a3a 100644 --- a/arch/powerpc/kernel/kgdb.c +++ b/arch/powerpc/kernel/kgdb.c @@ -129,7 +129,7 @@ static int kgdb_handle_breakpoint(struct pt_regs *regs) return 0; if (*(u32 *) (regs->nip) == *(u32 *) (&arch_kgdb_ops.gdb_bpt_instr)) - regs->nip += 4; + regs->nip += BREAK_INSTR_SIZE; return 1; }
kgdb_handle_breakpoint checks the first arch_kgdb_breakpoint which is not known by gdb that's why is necessary jump over it. The jump lenght is equal to BREAK_INSTR_SIZE that's why is cleaner to use defined macro instead of hardcoded non-described offset. Signed-off-by: Michal Simek <monstr@monstr.eu> CC: Jason Wessel <jason.wessel@windriver.com> CC: Benjamin Herrenschmidt <benh@kernel.crashing.org> CC: linuxppc-dev@ozlabs.org --- arch/powerpc/kernel/kgdb.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)