From: Steven Rostedt <rostedt@kernel.org>
To: linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org
Cc: Masami Hiramatsu <mhiramat@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
Andrew Morton <akpm@linux-foundation.org>
Subject: [PATCH 00/12] tracing: Clean up trace.c and move some code into other files
Date: Fri, 06 Feb 2026 14:37:41 -0500 [thread overview]
Message-ID: <20260206193741.767171392@kernel.org> (raw)
The trace.c file was a dumping ground for most tracing code. Start
organizing it better by moving various functions out into their own files.
The trace.c file is almost 12000 lines in size. After this change, it
goes down to just under 10,000. By organizing the code by topics and
moving them to their own files, it makes it more manageable to maintain.
- Move some generic always_inline functions into trace.h
- Move the trace_printk functions into the existing trace_printk.c file.
This also required some clean up of the code.
- Move the pid filtering code into a new file: trace_pid.c.
- Move the snapshot and max latency handling code into a new file:
trace_snapshot.c
This is mostly a non-functional change. But due to some clean ups, there
is still slightly some functional changes (but for the better).
This will also cause some existing code being worked on to conflict,
but I'll handle that.
I have done basic testing with this code, but it hasn't gone through
my full test suite. I'll start that now. Those tests test various config
options which may catch something I missed.
Steven Rostedt (12):
tracing: Make tracing_disabled global for tracing system
tracing: Make tracing_selftest_running global to the tracing subsystem
tracing: Move __trace_buffer_{un}lock_*() functions to trace.h
tracing: Move ftrace_trace_stack() out of trace.c and into trace.h
tracing: Make printk_trace global for tracing system
tracing: Make tracing_update_buffers() take NULL for global_trace
tracing: Have trace_printk functions use flags instead of using global_trace
tracing: Use system_state in trace_printk_init_buffers()
tracing: Move trace_printk functions out of trace.c and into trace_printk.c
tracing: Move pid filtering into trace_pid.c
tracing: Move tracing_set_filter_buffering() into trace_events_hist.c
tracing: Move snapshot code out of trace.c and into trace_snapshot.c
----
include/linux/ftrace.h | 2 +-
kernel/trace/Makefile | 2 +
kernel/trace/trace.c | 2264 +++-----------------------------------
kernel/trace/trace.h | 188 +++-
kernel/trace/trace_events.c | 2 +-
kernel/trace/trace_events_hist.c | 20 +
kernel/trace/trace_kprobe.c | 2 +-
kernel/trace/trace_pid.c | 246 +++++
kernel/trace/trace_printk.c | 431 ++++++++
kernel/trace/trace_snapshot.c | 1068 ++++++++++++++++++
10 files changed, 2120 insertions(+), 2105 deletions(-)
create mode 100644 kernel/trace/trace_pid.c
create mode 100644 kernel/trace/trace_snapshot.c
next reply other threads:[~2026-02-06 19:58 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-06 19:37 Steven Rostedt [this message]
2026-02-06 19:37 ` [PATCH 01/12] tracing: Make tracing_disabled global for tracing system Steven Rostedt
2026-02-06 19:37 ` [PATCH 02/12] tracing: Make tracing_selftest_running global to the tracing subsystem Steven Rostedt
2026-02-06 19:37 ` [PATCH 03/12] tracing: Move __trace_buffer_{un}lock_*() functions to trace.h Steven Rostedt
2026-02-06 19:37 ` [PATCH 04/12] tracing: Move ftrace_trace_stack() out of trace.c and into trace.h Steven Rostedt
2026-02-06 19:37 ` [PATCH 05/12] tracing: Make printk_trace global for tracing system Steven Rostedt
2026-02-06 19:37 ` [PATCH 06/12] tracing: Make tracing_update_buffers() take NULL for global_trace Steven Rostedt
2026-02-06 19:37 ` [PATCH 07/12] tracing: Have trace_printk functions use flags instead of using global_trace Steven Rostedt
2026-02-06 19:37 ` [PATCH 08/12] tracing: Use system_state in trace_printk_init_buffers() Steven Rostedt
2026-02-06 19:37 ` [PATCH 09/12] tracing: Move trace_printk functions out of trace.c and into trace_printk.c Steven Rostedt
2026-02-06 19:37 ` [PATCH 10/12] tracing: Move pid filtering into trace_pid.c Steven Rostedt
2026-02-06 19:37 ` [PATCH 11/12] tracing: Move tracing_set_filter_buffering() into trace_events_hist.c Steven Rostedt
2026-02-06 19:37 ` [PATCH 12/12] tracing: Move snapshot code out of trace.c and into trace_snapshot.c Steven Rostedt
2026-02-07 14:56 ` [PATCH 00/12] tracing: Clean up trace.c and move some code into other files Steven Rostedt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260206193741.767171392@kernel.org \
--to=rostedt@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mathieu.desnoyers@efficios.com \
--cc=mhiramat@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox