[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260108155120.023038025@kernel.org>
Date: Thu, 08 Jan 2026 10:51:20 -0500
From: Steven Rostedt <rostedt@...nel.org>
To: linux-kernel@...r.kernel.org
Cc: Masami Hiramatsu <mhiramat@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: [for-linus][PATCH 0/5] tracing: Fixes for v6.19
tracing fixes for v6.19:
- Remove useless assignment of soft_mode variable
The function __ftrace_event_enable_disable() sets "soft_mode" in one of
the branch paths but doesn't use it after that. Remove the setting of that
variable.
- Add a cond_resched() in ring_buffer_resize()
The resize function that allocates all the pages for the ring buffer was
causing a soft lockup on PREEMPT_NONE configs when allocating large
buffers on machines with many CPUs. Hopefully this is the last
cond_resched() needed to be added as PREEMPT_LAZY becomes the norm in the
future.
- Make ftrace_graph_ent depth field signed
The "depth" field of struct ftrace_graph_ent was converted from "int" to
"unsigned long" for alignment reasons to work with being embedded in other
structures. The conversion from a signed to unsigned caused integrity
checks to always pass as they were comparing "depth" to less than zero.
Make the field signed long.
- Add recursion protection to stack trace events
A infinite recursion was triggered by a stack trace event calling RCU
which internally called rcu_read_unlock_special(), which triggered an
event that was also doing stacktraces which cause it to trigger the same
RCU lock that called rcu_read_unlock_special() again.
Update the trace_test_and_set_recursion() to add a set of context checks
for events to use, and have the stack trace event use that for recursion
protection.
- Make the variable ftrace_dump_on_oops static
The cleanup of sysctl that moved all the updates to the files that use
them moved the reference of ftrace_dump_on_oops to where it is used.
It is no longer used outside of the trace.c file. Make it static.
git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace/fixes
Head SHA1: 1e2ed4bfd50ace3c4272cfab7e9aa90956fb7ae0
Ben Dooks (1):
trace: ftrace_dump_on_oops[] is not exported, make it static
Julia Lawall (1):
tracing: Drop unneeded assignment to soft_mode
Steven Rostedt (2):
ftrace: Make ftrace_graph_ent depth field signed
tracing: Add recursion protection in kernel stack trace recording
Wupeng Ma (1):
ring-buffer: Avoid softlockup in ring_buffer_resize() during memory free
----
include/linux/ftrace.h | 2 +-
include/linux/trace_recursion.h | 9 +++++++++
kernel/trace/ring_buffer.c | 2 ++
kernel/trace/trace.c | 8 +++++++-
kernel/trace/trace_events.c | 7 +++----
5 files changed, 22 insertions(+), 6 deletions(-)
Powered by blists - more mailing lists