diff options
author | Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> | 2011-02-14 00:48:07 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-02-14 06:09:53 -0500 |
commit | 0de4b34d466bae571b50f41c7296b85248205e35 (patch) | |
tree | 43c590d7cec90324bfdcf1cec074a8172547ed18 /kernel/trace/trace_kprobe.c | |
parent | 40262a71536d0b4a7486b279fa39463cfffabcc2 (diff) |
tracing/kprobe: Fix NULL pointer deref check
Add NULL check for avoiding NULL pointer deref.
This bug has been introduced by:
1ff511e35ed8: tracing/kprobes: Add bitfield type
which causes a null pointer dereference bug when kprobe-tracer
parses an argument without type.
Reported-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: 2nddept-manager@sdl.hitachi.co.jp
Cc: Peter Zijlstra <peterz@infradead.org>
LKML-Reference: <20110214054807.8919.69740.stgit@ltc236.sdl.hitachi.co.jp>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Reported-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Diffstat (limited to 'kernel/trace/trace_kprobe.c')
-rw-r--r-- | kernel/trace/trace_kprobe.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c index ccdc542022c3..8435b43b1782 100644 --- a/kernel/trace/trace_kprobe.c +++ b/kernel/trace/trace_kprobe.c | |||
@@ -935,7 +935,7 @@ static int parse_probe_arg(char *arg, struct trace_probe *tp, | |||
935 | parg->offset = tp->size; | 935 | parg->offset = tp->size; |
936 | tp->size += parg->type->size; | 936 | tp->size += parg->type->size; |
937 | ret = __parse_probe_arg(arg, parg->type, &parg->fetch, is_return); | 937 | ret = __parse_probe_arg(arg, parg->type, &parg->fetch, is_return); |
938 | if (ret >= 0) | 938 | if (ret >= 0 && t != NULL) |
939 | ret = __parse_bitfield_probe_arg(t, parg->type, &parg->fetch); | 939 | ret = __parse_bitfield_probe_arg(t, parg->type, &parg->fetch); |
940 | if (ret >= 0) { | 940 | if (ret >= 0) { |
941 | parg->fetch_size.fn = get_fetch_size_function(parg->type, | 941 | parg->fetch_size.fn = get_fetch_size_function(parg->type, |