hw-breakpoints: modify signal handling code to refrain from re-enabling HW Breakpoints
authorK.Prasad <prasad@linux.vnet.ibm.com>
Mon, 1 Jun 2009 18:15:03 +0000 (23:45 +0530)
committerFrederic Weisbecker <fweisbec@gmail.com>
Tue, 2 Jun 2009 20:46:59 +0000 (22:46 +0200)
This patch disables re-enabling of Hardware Breakpoint registers through
the signal handling code. This is now done during from hw_breakpoint_handler().

Original-patch-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: K.Prasad <prasad@linux.vnet.ibm.com>
Reviewed-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
arch/x86/kernel/signal.c

index 1442516..f33d2e0 100644 (file)
@@ -800,15 +800,6 @@ static void do_signal(struct pt_regs *regs)
 
        signr = get_signal_to_deliver(&info, &ka, regs, NULL);
        if (signr > 0) {
-               /*
-                * Re-enable any watchpoints before delivering the
-                * signal to user space. The processor register will
-                * have been cleared if the watchpoint triggered
-                * inside the kernel.
-                */
-               if (current->thread.debugreg7)
-                       set_debugreg(current->thread.debugreg7, 7);
-
                /* Whee! Actually deliver the signal.  */
                if (handle_signal(signr, &info, &ka, oldset, regs) == 0) {
                        /*