aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/ptrace.c
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2009-11-25 23:35:42 -0500
committerIngo Molnar <mingo@elte.hu>2009-11-26 03:29:21 -0500
commit605bfaee9078cd0b01d83402315389839ee4bb5c (patch)
tree35c3af269b37347b689b3b212fc99d4ae9f719e5 /arch/x86/kernel/ptrace.c
parentc6567f642e20bcc79abed030f44be5b0d6da2ded (diff)
hw-breakpoints: Simplify error handling in breakpoint creation requests
This simplifies the error handling when we create a breakpoint. We don't need to check the NULL return value corner case anymore since we have improved perf_event_create_kernel_counter() to always return an error code in the failure case. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Prasad <prasad@linux.vnet.ibm.com> LKML-Reference: <1259210142-5714-3-git-send-regression-fweisbec@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/ptrace.c')
-rw-r--r--arch/x86/kernel/ptrace.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c
index b25f8947ed7a..75e0cd847bd6 100644
--- a/arch/x86/kernel/ptrace.c
+++ b/arch/x86/kernel/ptrace.c
@@ -657,10 +657,7 @@ restore:
657 tsk, true); 657 tsk, true);
658 thread->ptrace_bps[i] = NULL; 658 thread->ptrace_bps[i] = NULL;
659 659
660 if (!bp) { /* incorrect bp, or we have a bug in bp API */ 660 /* Incorrect bp, or we have a bug in bp API */
661 rc = -EINVAL;
662 break;
663 }
664 if (IS_ERR(bp)) { 661 if (IS_ERR(bp)) {
665 rc = PTR_ERR(bp); 662 rc = PTR_ERR(bp);
666 bp = NULL; 663 bp = NULL;
@@ -729,9 +726,6 @@ static int ptrace_set_breakpoint_addr(struct task_struct *tsk, int nr,
729 tsk, 726 tsk,
730 bp->attr.disabled); 727 bp->attr.disabled);
731 } 728 }
732
733 if (!bp)
734 return -EIO;
735 /* 729 /*
736 * CHECKME: the previous code returned -EIO if the addr wasn't a 730 * CHECKME: the previous code returned -EIO if the addr wasn't a
737 * valid task virtual addr. The new one will return -EINVAL in this 731 * valid task virtual addr. The new one will return -EINVAL in this