mirror of
https://github.com/torvalds/linux.git
synced 2026-06-06 05:27:07 +02:00
tracing: Fix race where eprobes can be called before the event
commitd5f30a7da8upstream. The flag that tells the event to call its triggers after reading the event is set for eprobes after the eprobe is enabled. This leads to a race where the eprobe may be triggered at the beginning of the event where the record information is NULL. The eprobe then dereferences the NULL record causing a NULL kernel pointer bug. Test for a NULL record to keep this from happening. Link: https://lore.kernel.org/linux-trace-kernel/20221116192552.1066630-1-rafaelmendsr@gmail.com/ Link: https://lore.kernel.org/all/20221117214249.2addbe10@gandalf.local.home/ Cc: stable@vger.kernel.org Fixes:7491e2c442("tracing: Add a probe that attaches to trace events") Reported-by: Rafael Mendonca <rafaelmendsr@gmail.com> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org> Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org> Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
c9449d762f
commit
43f7cd89b5
|
|
@ -564,6 +564,9 @@ static void eprobe_trigger_func(struct event_trigger_data *data,
|
|||
{
|
||||
struct eprobe_data *edata = data->private_data;
|
||||
|
||||
if (unlikely(!rec))
|
||||
return;
|
||||
|
||||
if (unlikely(!rec))
|
||||
return;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user