Message ID | 20241124235019.106333158@goodmis.org (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | None | expand |
On Sun, Nov 24, 2024 at 06:49:44PM -0500, Steven Rostedt wrote: > From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> > > Define a rcu_tasks_trace lock guard for use by the syscall enter/exit > tracepoints. > > Cc: Linus Torvalds <torvalds@linux-foundation.org> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Michael Jeanson <mjeanson@efficios.com> > Cc: Masami Hiramatsu <mhiramat@kernel.org> > Cc: Peter Zijlstra <peterz@infradead.org> > Cc: Alexei Starovoitov <ast@kernel.org> > Cc: Yonghong Song <yhs@fb.com> > Cc: Paul E. McKenney <paulmck@kernel.org> > Cc: Ingo Molnar <mingo@redhat.com> > Cc: Arnaldo Carvalho de Melo <acme@kernel.org> > Cc: Mark Rutland <mark.rutland@arm.com> > Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> > Cc: Namhyung Kim <namhyung@kernel.org> > Cc: Andrii Nakryiko <andrii.nakryiko@gmail.com> > Cc: bpf@vger.kernel.org > Cc: Joel Fernandes <joel@joelfernandes.org> > Cc: Jordan Rife <jrife@google.com> > Cc: linux-trace-kernel@vger.kernel.org > Link: https://lore.kernel.org/20241123153031.2884933-4-mathieu.desnoyers@efficios.com > Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> > Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org> Reviewed-by: Paul E. McKenney <paulmck@kernel.org> > --- > include/linux/rcupdate_trace.h | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/include/linux/rcupdate_trace.h b/include/linux/rcupdate_trace.h > index eda493200663..e6c44eb428ab 100644 > --- a/include/linux/rcupdate_trace.h > +++ b/include/linux/rcupdate_trace.h > @@ -10,6 +10,7 @@ > > #include <linux/sched.h> > #include <linux/rcupdate.h> > +#include <linux/cleanup.h> > > extern struct lockdep_map rcu_trace_lock_map; > > @@ -98,4 +99,8 @@ static inline void rcu_read_lock_trace(void) { BUG(); } > static inline void rcu_read_unlock_trace(void) { BUG(); } > #endif /* #ifdef CONFIG_TASKS_TRACE_RCU */ > > +DEFINE_LOCK_GUARD_0(rcu_tasks_trace, > + rcu_read_lock_trace(), > + rcu_read_unlock_trace()) > + > #endif /* __LINUX_RCUPDATE_TRACE_H */ > -- > 2.45.2 > >
diff --git a/include/linux/rcupdate_trace.h b/include/linux/rcupdate_trace.h index eda493200663..e6c44eb428ab 100644 --- a/include/linux/rcupdate_trace.h +++ b/include/linux/rcupdate_trace.h @@ -10,6 +10,7 @@ #include <linux/sched.h> #include <linux/rcupdate.h> +#include <linux/cleanup.h> extern struct lockdep_map rcu_trace_lock_map; @@ -98,4 +99,8 @@ static inline void rcu_read_lock_trace(void) { BUG(); } static inline void rcu_read_unlock_trace(void) { BUG(); } #endif /* #ifdef CONFIG_TASKS_TRACE_RCU */ +DEFINE_LOCK_GUARD_0(rcu_tasks_trace, + rcu_read_lock_trace(), + rcu_read_unlock_trace()) + #endif /* __LINUX_RCUPDATE_TRACE_H */