From fb662288284e8f2ec26f13d50a6b0d5781771648 Mon Sep 17 00:00:00 2001 From: "Steven Rostedt (Red Hat)" Date: Mon, 26 Oct 2015 03:45:22 -0400 Subject: [PATCH] tracing: Fix sparse RCU warning p_start() and p_stop() are seq_file functions that match. Teach sparse to know that rcu_read_lock_sched() that is taken by p_start() is released by p_stop. Reported-by: kbuild test robot Signed-off-by: Steven Rostedt --- kernel/trace/trace_events.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c index 2b7fccd499c6..fb0261e90acc 100644 --- a/kernel/trace/trace_events.c +++ b/kernel/trace/trace_events.c @@ -938,6 +938,7 @@ static void t_stop(struct seq_file *m, void *p) } static void *p_start(struct seq_file *m, loff_t *pos) + __acquires(RCU) { struct trace_pid_list *pid_list; struct trace_array *tr = m->private; @@ -960,6 +961,7 @@ static void *p_start(struct seq_file *m, loff_t *pos) } static void p_stop(struct seq_file *m, void *p) + __releases(RCU) { rcu_read_unlock_sched(); mutex_unlock(&event_mutex);