* [GIT PULL] tracing: Updates for v7.1
@ 2026-04-16 9:27 Steven Rostedt
2026-04-17 17:50 ` pr-tracker-bot
0 siblings, 1 reply; 2+ messages in thread
From: Steven Rostedt @ 2026-04-16 9:27 UTC (permalink / raw)
To: Linus Torvalds
Cc: LKML, Masami Hiramatsu, Mathieu Desnoyers, Arnd Bergmann,
CaoRuichuang, David Carlier, David Laight, Donglin Peng,
Pengpeng Hou, Petr Pavlu, Randy Dunlap, Tom Zanussi,
Vineeth Pillai (Google), Wesley Atwell
Linus,
*** NOTE ***
This has a conflict with your current tree. I did a merge and pushed a
branch to my tree "merge/upstream". The file kernel/trace/trace.c has a
conflict and kernel/trace/trace.h has a mis-merge (adds a prototype
that was already added to the header by an upstream commit).
*** NOTE ***
tracing updates for v7.1:
- Fix printf format warning for bprintf
sunrpc uses a trace_printk() that triggers a printf warning during the
compile. Move the __printf() attribute around for when debugging is not
enabled the warning will go away.
- Remove redundant check for EVENT_FILE_FL_FREED in event_filter_write()
The FREED flag is checked in the call to event_file_file() and then
checked again right afterward, which is unneeded.
- Clean up event_file_file() and event_file_data() helpers
These helper functions played a different role in the past, but now with
eventfs, the READ_ONCE() isn't needed. Simplify the code a bit and also
add a warning to event_file_data() if the file or its data is not present.
- Remove updating file->private_data in tracing open
All access to the file private data is handled by the helper functions,
which do not use file->private_data. Stop updating it on open.
- Show ENUM names in function arguments via BTF in function tracing
When showing the function arguments when func-args option is set for
function tracing, if one of the arguments is found to be an enum, show the
name of the enum instead of its number.
- Add new trace_call__##name() API for tracepoints
Tracepoints are enabled via static_branch() blocks, where when not
enabled, there's only a nop that is in the code where the execution will
just skip over it. When tracing is enabled, the nop is converted to a
direct jump to the tracepoint code. Sometimes more calculations are
required to be performed to update the parameters of the tracepoint. In
this case, trace_##name##_enabled() is called which is a static_branch()
that gets enabled only when the tracepoint is enabled. This allows the
extra calculations to also be skipped by the nop:
if (trace_foo_enabled()) {
x = bar();
trace_foo(x);
}
Where the x=bar() is only performed when foo is enabled. The problem with
this approach is that there's now two static_branch() calls. One for
checking if the tracepoint is enabled, and then again to know if the
tracepoint should be called. The second one is redundant.
Introduce trace_call__foo() that will call the foo() tracepoint directly
without doing a static_branch():
if (trace_foo_enabled()) {
x = bar();
trace_call__foo();
}
- Update various locations to use the new trace_call__##name() API
- Move snapshot code out of trace.c
Cleaning up trace.c to not be a "dump all", move the snapshot code out of
it and into a new trace_snapshot.c file.
- Clean up some "%*.s" to "%*s"
- Allow boot kernel command line options to be called multiple times
Have options like:
ftrace_filter=foo ftrace_filter=bar ftrace_filter=zoo
Equal to:
ftrace_filter=foo,bar,zoo
- Fix ipi_raise event CPU field to be a CPU field
The ipi_raise target_cpus field is defined as a __bitmask(). There is now a
__cpumask() field definition. Update the field to use that.
- Have hist_field_name() use a snprintf() and not a series of strcat()
It's safer to use snprintf() that a series of strcat().
- Fix tracepoint regfunc balancing
A tracepoint can define a "reg" and "unreg" function that gets called
before the tracepoint is enabled, and after it is disabled respectively.
But on error, after the "reg" func is called and the tracepoint is not
enabled, the "unreg" function is not called to tear down what the "reg"
function performed.
- Fix output that shows what histograms are enabled
Event variables are displayed incorrectly in the histogram output.
Instead of "sched.sched_wakeup.$var", it is showing
"$sched.sched_wakeup.var" where the '$' is in the incorrect location.
- Some other simple cleanups.
Please pull the latest trace-v7.1 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace-v7.1
Tag SHA1: 391250945189f8a948e432b1ef64a3bc6c224536
Head SHA1: 621a59d8fc678762abc12ad8ad6bf616496fa4d2
Arnd Bergmann (1):
tracing: move __printf() attribute on __ftrace_vbprintk()
CaoRuichuang (1):
tracing: Report ipi_raise target CPUs as cpumask
David Carlier (1):
tracepoint: balance regfunc() on func_add() failure in tracepoint_add_func()
David Laight (1):
tracing: Remove spurious default precision from show_event_trigger/filter formats
Donglin Peng (1):
tracing: Pretty-print enum parameters in function arguments
Pengpeng Hou (1):
tracing: Rebuild full_name on each hist_field_name() call
Petr Pavlu (3):
tracing: Remove unnecessary check for EVENT_FILE_FL_FREED
tracing: Clean up access to trace_event_file from a file pointer
tracing: Free up file->private_data for use by individual events
Randy Dunlap (1):
tracing: trace_mmap.h: fix a kernel-doc warning
Steven Rostedt (3):
tracing: Move snapshot code out of trace.c and into trace_snapshot.c
tracing: Remove tracing_alloc_snapshot() when snapshot isn't defined
tracing: Remove duplicate latency_fsnotify() stub
Tom Zanussi (2):
tracing: Fix fully-qualified variable reference printing in histograms
selftests/ftrace: Add test case for fully-qualified variable references
Vineeth Pillai (Google) (7):
tracepoint: Add trace_call__##name() API
kernel: Use trace_call__##name() at guarded tracepoint call sites
i2c: Use trace_call__##name() at guarded tracepoint call sites
spi: Use trace_call__##name() at guarded tracepoint call sites
btrfs: Use trace_call__##name() at guarded tracepoint call sites
mm: damon: Use trace_call__##name() at guarded tracepoint call sites
cpufreq: Use trace_call__##name() at guarded tracepoint call sites
Wesley Atwell (2):
tracing: Append repeated boot-time tracing parameters
tracing: Preserve repeated trace_trigger boot parameters
----
drivers/cpufreq/amd-pstate.c | 10 +-
drivers/cpufreq/cpufreq.c | 2 +-
drivers/cpufreq/intel_pstate.c | 2 +-
drivers/i2c/i2c-core-slave.c | 2 +-
drivers/spi/spi-axi-spi-engine.c | 4 +-
fs/btrfs/extent_map.c | 4 +-
fs/btrfs/raid56.c | 4 +-
include/linux/ftrace.h | 2 +-
include/linux/trace_printk.h | 1 -
include/linux/tracepoint.h | 11 +
include/trace/events/ipi.h | 6 +-
include/uapi/linux/trace_mmap.h | 1 +
kernel/irq_work.c | 2 +-
kernel/sched/ext.c | 2 +-
kernel/smp.c | 2 +-
kernel/trace/Makefile | 1 +
kernel/trace/ftrace.c | 12 +-
kernel/trace/trace.c | 1312 ++------------------
kernel/trace/trace.h | 126 +-
kernel/trace/trace_events.c | 31 +-
kernel/trace/trace_events_hist.c | 29 +-
kernel/trace/trace_kprobe.c | 3 +-
kernel/trace/trace_output.c | 12 +-
kernel/trace/trace_printk.c | 1 +
kernel/trace/trace_snapshot.c | 1066 ++++++++++++++++
kernel/tracepoint.c | 2 +
mm/damon/core.c | 2 +-
.../inter-event/trigger-fully-qualified-var-ref.tc | 34 +
28 files changed, 1396 insertions(+), 1290 deletions(-)
create mode 100644 kernel/trace/trace_snapshot.c
create mode 100644 tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-fully-qualified-var-ref.tc
---------------------------
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [GIT PULL] tracing: Updates for v7.1
2026-04-16 9:27 [GIT PULL] tracing: Updates for v7.1 Steven Rostedt
@ 2026-04-17 17:50 ` pr-tracker-bot
0 siblings, 0 replies; 2+ messages in thread
From: pr-tracker-bot @ 2026-04-17 17:50 UTC (permalink / raw)
To: Steven Rostedt
Cc: Linus Torvalds, LKML, Masami Hiramatsu, Mathieu Desnoyers,
Arnd Bergmann, CaoRuichuang, David Carlier, David Laight,
Donglin Peng, Pengpeng Hou, Petr Pavlu, Randy Dunlap, Tom Zanussi,
Vineeth Pillai (Google), Wesley Atwell
The pull request you sent on Thu, 16 Apr 2026 05:27:09 -0400:
> git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git trace-v7.1
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/cb30bf881c5b4ee8b879558a2fce93d7de652955
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-04-17 17:50 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-16 9:27 [GIT PULL] tracing: Updates for v7.1 Steven Rostedt
2026-04-17 17:50 ` pr-tracker-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox