Re: [PATCH 5.10] tracing: Add tracing_reset_all_online_cpus_unlocked() function

From: Greg KH
Date: Mon Jun 19 2023 - 04:27:19 EST


On Fri, Jun 16, 2023 at 04:49:31AM +0800, Zheng Yejian wrote:
> From: "Steven Rostedt (Google)" <rostedt@xxxxxxxxxxx>
>
> commit e18eb8783ec4949adebc7d7b0fdb65f65bfeefd9 upstream.
>
> Currently the tracing_reset_all_online_cpus() requires the
> trace_types_lock held. But only one caller of this function actually has
> that lock held before calling it, and the other just takes the lock so
> that it can call it. More users of this function is needed where the lock
> is not held.
>
> Add a tracing_reset_all_online_cpus_unlocked() function for the one use
> case that calls it without being held, and also add a lockdep_assert to
> make sure it is held when called.
>
> Then have tracing_reset_all_online_cpus() take the lock internally, such
> that callers do not need to worry about taking it.
>
> Link: https://lkml.kernel.org/r/20221123192741.658273220@xxxxxxxxxxx
>
> Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Cc: Zheng Yejian <zhengyejian1@xxxxxxxxxx>
> Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
> [this patch is pre-depended by be111ebd8868d4b7c041cb3c6102e1ae27d6dc1d
> due to tracing_reset_all_online_cpus() should be called after taking lock]
> Fixes: be111ebd8868 ("tracing: Free buffers when a used dynamic event is removed")
> Signed-off-by: Zheng Yejian <zhengyejian1@xxxxxxxxxx>
> ---


What about for 5.15.y? You can't apply a fix to just an older tree as
you will then have a regression when you update.

I'll drop this one from my queue, please resend a backport for all
relevent stable releases.

thanks,

greg k-h