diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 48ecc4bb55e4..96005a930b25 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -9244,6 +9244,8 @@ static void trace_module_record(struct module *mod, bool add) struct trace_array *tr; unsigned long flags; + guard(mutex)(&trace_types_lock); + list_for_each_entry(tr, &ftrace_trace_arrays, list) { flags = tr->flags & (TRACE_ARRAY_FL_BOOT | TRACE_ARRAY_FL_LAST_BOOT); /* Update any persistent trace array that has already been started */