OSDN Git Service
(root)
/
android-x86
/
kernel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
595a438
)
tracing/probe: Fix null pointer dereference
author
Xinpeng Liu
<danielliu861@gmail.com>
Wed, 7 Aug 2019 23:29:23 +0000
(07:29 +0800)
committer
Steven Rostedt (VMware)
<rostedt@goodmis.org>
Sat, 31 Aug 2019 10:51:55 +0000
(06:51 -0400)
BUG: KASAN: null-ptr-deref in trace_probe_cleanup+0x8d/0xd0
Read of size 8 at addr
0000000000000000
by task syz-executor.0/9746
trace_probe_cleanup+0x8d/0xd0
free_trace_kprobe.part.14+0x15/0x50
alloc_trace_kprobe+0x23e/0x250
Link:
http://lkml.kernel.org/r/1565220563-980-1-git-send-email-danielliu861@gmail.com
Fixes:
e3dc9f898ef9c
("tracing/probe: Add trace_event_call accesses APIs")
Signed-off-by: Xinpeng Liu <danielliu861@gmail.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
kernel/trace/trace_probe.c
patch
|
blob
|
history
diff --git
a/kernel/trace/trace_probe.c
b/kernel/trace/trace_probe.c
index
dbef0d1
..
fb6bfbc
100644
(file)
--- a/
kernel/trace/trace_probe.c
+++ b/
kernel/trace/trace_probe.c
@@
-895,7
+895,8
@@
void trace_probe_cleanup(struct trace_probe *tp)
for (i = 0; i < tp->nr_args; i++)
traceprobe_free_probe_arg(&tp->args[i]);
- kfree(call->class->system);
+ if (call->class)
+ kfree(call->class->system);
kfree(call->name);
kfree(call->print_fmt);
}