Merge tag 'trace-v4.18-rc3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
Pull kprobe fix from Steven Rostedt: "This fixes a memory leak in the kprobe code" * tag 'trace-v4.18-rc3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: tracing/kprobe: Release kprobe print_fmt properly
This commit is contained in:
@@ -1480,8 +1480,10 @@ create_local_trace_kprobe(char *func, void *addr, unsigned long offs,
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = __register_trace_kprobe(tk);
|
ret = __register_trace_kprobe(tk);
|
||||||
if (ret < 0)
|
if (ret < 0) {
|
||||||
|
kfree(tk->tp.call.print_fmt);
|
||||||
goto error;
|
goto error;
|
||||||
|
}
|
||||||
|
|
||||||
return &tk->tp.call;
|
return &tk->tp.call;
|
||||||
error:
|
error:
|
||||||
@@ -1501,6 +1503,8 @@ void destroy_local_trace_kprobe(struct trace_event_call *event_call)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__unregister_trace_kprobe(tk);
|
__unregister_trace_kprobe(tk);
|
||||||
|
|
||||||
|
kfree(tk->tp.call.print_fmt);
|
||||||
free_trace_kprobe(tk);
|
free_trace_kprobe(tk);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_PERF_EVENTS */
|
#endif /* CONFIG_PERF_EVENTS */
|
||||||
|
Reference in New Issue
Block a user