Messages in this thread Patch in this message | | | Date | Fri, 25 Mar 2011 16:44:14 -0700 | From | Greg KH <> | Subject | [38/63] sh: Fix ptrace hw_breakpoint handling |
| |
2.6.38-stable review patch. If anyone has any objections, please let us know.
------------------
From: David Engraf <david.engraf@sysgo.com>
commit fb7f045ace0624f1e59a7db8497e460bd54b1cbc upstream.
Since commit 34d0b5af50a063cded842716633501b38ff815fb it is no longer possible to debug an application using singlestep. The old commit converted singlestep handling via ptrace to hw_breakpoints. The hw_breakpoint is disabled when an event is triggered and not re-enabled again. This patch re-enables the existing hw_breakpoint before the existing breakpoint is reused.
Signed-off-by: David Engraf <david.engraf@sysgo.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
--- arch/sh/kernel/ptrace_32.c | 2 ++ 1 file changed, 2 insertions(+)
--- a/arch/sh/kernel/ptrace_32.c +++ b/arch/sh/kernel/ptrace_32.c @@ -101,6 +101,8 @@ static int set_single_step(struct task_s attr = bp->attr; attr.bp_addr = addr; + /* reenable breakpoint */ + attr.disabled = false; err = modify_user_hw_breakpoint(bp, &attr); if (unlikely(err)) return err;
| |