Messages in this thread | | | Date | Thu, 24 Jun 2021 17:39:02 -0400 | From | Steven Rostedt <> | Subject | Re: [PATCH V5 12/14] trace: Protect tr->tracing_cpumask with get/put_online_cpus |
| |
On Tue, 22 Jun 2021 16:42:30 +0200 Daniel Bristot de Oliveira <bristot@redhat.com> wrote:
> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c > index 52fc9438b7b4..c14f33db147e 100644 > --- a/kernel/trace/trace.c > +++ b/kernel/trace/trace.c > @@ -5053,7 +5053,13 @@ int tracing_set_cpumask(struct trace_array *tr, > arch_spin_unlock(&tr->max_lock); > local_irq_enable(); > > + /* > + * tracing_cpumask is read by tracers that support CPU > + * hotplug. > + */ > + get_online_cpus(); > cpumask_copy(tr->tracing_cpumask, tracing_cpumask_new); > + put_online_cpus(); > > return 0;
Hmm, the tracing_cpumask is only touched in he work function, with the necessary locks. How is get_online_cpus() protecting it here?
That is, tracing_cpumask isn't touched in the path of bringing up or taking down a CPU, and shouldn't be an issue here.
Should I just drop this patch?
-- Steve
| |