Patch "tracing: Fix race where eprobes can be called before the event" has been added to the 6.0-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    tracing: Fix race where eprobes can be called before the event

to the 6.0-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     tracing-fix-race-where-eprobes-can-be-called-before-the-event.patch
and it can be found in the queue-6.0 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From 94eedf3dded5fb472ce97bfaf3ac1c6c29c35d26 Mon Sep 17 00:00:00 2001
From: "Steven Rostedt (Google)" <rostedt@xxxxxxxxxxx>
Date: Thu, 17 Nov 2022 21:42:49 -0500
Subject: tracing: Fix race where eprobes can be called before the event

From: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>

commit 94eedf3dded5fb472ce97bfaf3ac1c6c29c35d26 upstream.

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@xxxxxxxxx/
Link: https://lore.kernel.org/linux-trace-kernel/20221117214249.2addbe10@xxxxxxxxxxxxxxxxxx

Cc: Linux Trace Kernel <linux-trace-kernel@xxxxxxxxxxxxxxx>
Cc: Tzvetomir Stoyanov <tz.stoyanov@xxxxxxxxx>
Cc: Tom Zanussi <zanussi@xxxxxxxxxx>
Cc: stable@xxxxxxxxxxxxxxx
Fixes: 7491e2c442781 ("tracing: Add a probe that attaches to trace events")
Acked-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>
Reported-by: Rafael Mendonca <rafaelmendsr@xxxxxxxxx>
Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
 kernel/trace/trace_eprobe.c |    3 +++
 1 file changed, 3 insertions(+)

--- a/kernel/trace/trace_eprobe.c
+++ b/kernel/trace/trace_eprobe.c
@@ -560,6 +560,9 @@ static void eprobe_trigger_func(struct e
 {
 	struct eprobe_data *edata = data->private_data;
 
+	if (unlikely(!rec))
+		return;
+
 	__eprobe_trace_func(edata, rec);
 }
 


Patches currently in stable-queue which might be from rostedt@xxxxxxxxxxx are

queue-6.0/tracing-fix-race-where-eprobes-can-be-called-before-the-event.patch
queue-6.0/ftrace-fix-null-pointer-dereference-in-ftrace_add_mod.patch
queue-6.0/tracing-fix-memory-leak-in-tracing_read_pipe.patch
queue-6.0/tracing-ring-buffer-have-polling-block-on-watermark.patch
queue-6.0/ftrace-optimize-the-allocation-for-mcount-entries.patch
queue-6.0/ring_buffer-do-not-deactivate-non-existant-pages.patch
queue-6.0/ftrace-fix-the-possible-incorrect-kernel-message.patch
queue-6.0/tracing-fix-memory-leak-in-test_gen_synth_cmd-and-test_empty_synth_event.patch
queue-6.0/tracing-fix-wild-memory-access-in-register_synth_event.patch



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux