[PATCH v4 0/3] tracing: Changes to saved_cmdlines

From: Steven Rostedt
Date: Tue Feb 20 2024 - 09:05:27 EST



The first patch is to consolidate the map_cmdline_to_pid into the allocate
page for the saved_cmdlines structure.

The second patch removes some open coded saved_cmdlines logic in trace.c
into a helper function to make it a cleaner move.

The third patch simply moves code around. The goal is to keep all the
saved_cmdlines logic in one place. Currently it's in two files (trace.c and
trace_sched_switch.c). Since trace.c is awfully large, move all the code to
trace_sched_switch.c, as that's its only purpose today anyway.

Changes since v3: https://lore.kernel.org/linux-trace-kernel/20240216210047.584712062@xxxxxxxxxxx/

- The map_cmdline_to_pid field was moved into the pages allocated of the
structure and that replaced the kmalloc. But that field still had
kfree() called on it in the freeing of the structure which caused
a memory corruption.

Steven Rostedt (Google) (3):
tracing: Have saved_cmdlines arrays all in one allocation
tracing: Move open coded processing of tgid_map into helper function
tracing: Move saved_cmdline code into trace_sched_switch.c

----
kernel/trace/trace.c | 509 +------------------------------------
kernel/trace/trace.h | 10 +
kernel/trace/trace_sched_switch.c | 515 ++++++++++++++++++++++++++++++++++++++
3 files changed, 528 insertions(+), 506 deletions(-)