[for-linus][PATCH 0/2] tracing: Fixes for 6.13

From: Steven Rostedt
Date: Tue Jan 14 2025 - 09:53:32 EST



Tracing fixes for 6.13:

- Fix a regression in the irqsoff and wakeup latency tracing

The function graph tracer infrastructure has become generic so that
kretprobes and BPF can be based on it. As it use to only handle
function graph tracing, it would always calculate the time the
function entered so that it could then calculate the time it exits
and give the length of time the function executed for. But this is
not needed for the other users (kretprobes and BPF) and the reading
the clock adds a non-negligible overhead, so the calculation was
moved into the function graph tracer logic.

But the irqsoff and wakeup latency tracers, when the "display-graph"
option was set, would use the function graph tracer to calculate the
times of functions during the latency. The movement of the calltime
calculation made the value zero for these tracers, and the output
no longer showed the length of time of each tracer, but instead the
absolute timestamp of when the function returned (rettime - calltime
where calltime is zero).

Have the irqsoff and wakeup latency tracers also do the calltime
calculation as the function graph tracer does.

- Update the tracing display to reflect the new preempt lazy model

When the system is configured with preempt lazy, the output of the
trace data would state "unknown" for the current preemption model.
Because the lazy preemption model was just added, make it known
to the tracing subsystem too.

git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace/fixes

Head SHA1: 24e0e610400aa2c765ee87b1b3c1401732b20fc5


Shrikanth Hegde (1):
tracing: Print lazy preemption model

Steven Rostedt (1):
tracing: Fix irqsoff and wakeup latency tracers when using function graph

----
kernel/trace/trace.c | 1 +
kernel/trace/trace_irqsoff.c | 14 ++++++++++++++
kernel/trace/trace_sched_wakeup.c | 14 ++++++++++++++
3 files changed, 29 insertions(+)