kprobes: return proper error code from register_kprobe()
authorPrashanth Nageshappa <prashanth@linux.vnet.ibm.com>
Mon, 5 Mar 2012 22:59:12 +0000 (14:59 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 5 Mar 2012 23:49:42 +0000 (15:49 -0800)
commitf986a499ef6f317d906e6f6f281be966e1237a10
tree88ceafe9a214907bd25e8a8ffd8990fd5bd2b40e
parentc22ab332902333f83766017478c1ef6607ace681
kprobes: return proper error code from register_kprobe()

register_kprobe() aborts if the address of the new request falls in a
prohibited area (such as ftrace pouch, __kprobes annotated functions,
non-kernel text addresses, jump label text).  We however don't return the
right error on this abort, resulting in a silent failure - incorrect
adding/reporting of kprobes ('perf probe do_fork+18' or 'perf probe
mcount' for instance).

In V2 we are incorporating Masami Hiramatsu's  feedback.

This patch fixes it by returning -EINVAL upon failure.

While we are here, rename the label used for exit to be more appropriate.

Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Signed-off-by: Prashanth K Nageshappa <prashanth@linux.vnet.ibm.com>
Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Jason Baron <jbaron@redhat.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
kernel/kprobes.c