WSL2-Linux-Kernel/kernel/trace
Steven Rostedt (Google) 39e7872537 tracing: Add tracing_reset_all_online_cpus_unlocked() function
commit e18eb8783e 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@goodmis.org

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Zheng Yejian <zhengyejian1@huawei.com>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Zheng Yejian <zhengyejian1@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-06-28 10:29:40 +02:00
..
Kconfig tracing: Fix complicated dependency of CONFIG_TRACER_MAX_TRACE 2023-01-12 11:58:55 +01:00
Makefile tracing: Place trace_pid_list logic into abstract functions 2022-07-29 17:25:29 +02:00
blktrace.c trace/blktrace: fix memory leak with using debugfs_lookup() 2023-03-10 09:39:47 +01:00
bpf_trace.c bpf: Add extra path pointer check to d_path helper 2023-06-14 11:13:03 +02:00
bpf_trace.h
error_report-traces.c
fgraph.c
ftrace.c ftrace: Fix issue that 'direct->addr' not restored in modify_ftrace_direct() 2023-04-13 16:48:24 +02:00
ftrace_internal.h
kprobe_event_gen_test.c tracing: Fix wrong return in kprobe_event_gen_test.c 2023-04-05 11:24:54 +02:00
pid_list.c tracing: Place trace_pid_list logic into abstract functions 2022-07-29 17:25:29 +02:00
pid_list.h tracing: Place trace_pid_list logic into abstract functions 2022-07-29 17:25:29 +02:00
power-traces.c
preemptirq_delay_test.c
ring_buffer.c ring-buffer: Ensure proper resetting of atomic variables in ring_buffer_reset_online_cpus 2023-05-17 11:50:13 +02:00
ring_buffer_benchmark.c
rpm-traces.c
synth_event_gen_test.c tracing: Fix memory leak in test_gen_synth_cmd() and test_empty_synth_event() 2022-11-26 09:24:43 +01:00
trace.c tracing: Add tracing_reset_all_online_cpus_unlocked() function 2023-06-28 10:29:40 +02:00
trace.h tracing: Add tracing_reset_all_online_cpus_unlocked() function 2023-06-28 10:29:40 +02:00
trace_benchmark.c
trace_benchmark.h
trace_boot.c tracing: Initialize integer variable to prevent garbage return value 2022-06-09 10:23:21 +02:00
trace_branch.c
trace_clock.c
trace_dynevent.c tracing: Free buffers when a used dynamic event is removed 2022-12-08 11:28:43 +01:00
trace_dynevent.h
trace_entries.h
trace_eprobe.c tracing: Fix race where eprobes can be called before the event 2023-01-12 11:58:54 +01:00
trace_event_perf.c tracing/perf: Fix double put of trace event when init fails 2022-08-25 11:39:57 +02:00
trace_events.c tracing: Add tracing_reset_all_online_cpus_unlocked() function 2023-06-28 10:29:40 +02:00
trace_events_filter.c tracing: Add ustring operation to filtering string pointers 2022-03-08 19:12:33 +01:00
trace_events_filter_test.h
trace_events_hist.c tracing: Check field value in hist_field_name() 2023-03-22 13:31:33 +01:00
trace_events_inject.c
trace_events_synth.c tracing: Add tracing_reset_all_online_cpus_unlocked() function 2023-06-28 10:29:40 +02:00
trace_events_trigger.c tracing: Fix to check event_mutex is held while accessing trigger list 2022-09-15 11:30:02 +02:00
trace_export.c
trace_functions.c
trace_functions_graph.c tracing: Disable "other" permission bits in the tracefs files 2021-11-18 19:16:15 +01:00
trace_hwlat.c trace/hwlat: Do not start per-cpu thread if it is already running 2023-03-30 12:47:43 +02:00
trace_irqsoff.c
trace_kdb.c
trace_kprobe.c tracing: Move duplicate code of trace_kprobe/eprobe.c into header 2022-10-26 12:34:31 +02:00
trace_kprobe_selftest.c
trace_kprobe_selftest.h
trace_mmiotrace.c
trace_nop.c
trace_osnoise.c tracing/osnoise: Fix duration type 2022-12-08 11:28:43 +01:00
trace_output.c tracing: Make sure trace_printk() can output as soon as it can be used 2023-02-01 08:27:23 +01:00
trace_output.h
trace_preemptirq.c tracing: hold caller_addr to hardirq_{enable,disable}_ip 2022-09-20 12:39:43 +02:00
trace_printk.c tracing: Disable "other" permission bits in the tracefs files 2021-11-18 19:16:15 +01:00
trace_probe.c tracing/probes: Handle system names with hyphens 2023-01-12 11:58:55 +01:00
trace_probe.h tracing/probe: trace_probe_primary_from_call(): checked list_first_entry 2023-06-09 10:32:32 +02:00
trace_probe_kernel.h tracing: Add "(fault)" name injection to kernel probes 2022-10-26 12:34:32 +02:00
trace_probe_tmpl.h
trace_recursion_record.c tracing: Disable "other" permission bits in the tracefs files 2021-11-18 19:16:15 +01:00
trace_sched_switch.c
trace_sched_wakeup.c
trace_selftest.c
trace_selftest_dynamic.c
trace_seq.c
trace_stack.c tracing: Disable "other" permission bits in the tracefs files 2021-11-18 19:16:15 +01:00
trace_stat.c tracing: Disable "other" permission bits in the tracefs files 2021-11-18 19:16:15 +01:00
trace_stat.h
trace_synth.h tracing: synth events: increase max fields count 2021-09-08 15:29:16 -04:00
trace_syscalls.c tracing: Make tp_printk work on syscall tracepoints 2022-06-14 18:36:14 +02:00
trace_uprobe.c tracing/uprobes: Check the return value of kstrdup() for tu->filename 2022-03-08 19:12:38 +01:00
tracing_map.c tracing: Fix a kmemleak false positive in tracing_map 2021-12-17 10:30:16 +01:00
tracing_map.h