From: Steven Rostedt Date: Thu, 3 Jul 2025 15:52:22 +0000 (-0400) Subject: ftrace: Make DYNAMIC_FTRACE always enabled for architectures that support it X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9b4d5d330fcd40bbc38a1e6ed3d617e674d651fa;p=thirdparty%2Fkernel%2Flinux.git ftrace: Make DYNAMIC_FTRACE always enabled for architectures that support it ftrace has two flavors: 1) static: Where every function always calls the ftrace trampoline 2) dynamic: Where each function has nops that can be changed on demand to jump to the ftrace trampoline when needed. The static flavor has very high performance overhead and was only created to make it easier for architectures to implement the dynamic flavor. An architecture developer can first implement the static ftrace to make sure the trampolines work before working on the more complicated dynamic aspect of ftrace. Once the architecture can support dynamic ftrace, there's no reason to continue to support the static flavor. In fact, the static flavor tends to bitrot and bugs start to appear in them. Remove the prompt to pick DYNAMIC_FTRACE and simply enable it if the architecture supports it. Link: https://lore.kernel.org/all/f7e12c6d-892e-4ca3-9ef0-fbb524d04a48@ghiti.fr/ Cc: Masami Hiramatsu Cc: Mathieu Desnoyers Cc: Mark Rutland Cc: Linus Torvalds Cc: Alexandre Ghiti Cc: ChenMiao Link: https://lore.kernel.org/20250703115222.2d7c8cd5@batman.local.home Signed-off-by: Steven Rostedt (Google) --- diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig index a3f35c7d83b6c..28afc6941e7a5 100644 --- a/kernel/trace/Kconfig +++ b/kernel/trace/Kconfig @@ -275,7 +275,7 @@ config FUNCTION_TRACE_ARGS funcgraph-args (for the function graph tracer) config DYNAMIC_FTRACE - bool "enable/disable function tracing dynamically" + bool depends on FUNCTION_TRACER depends on HAVE_DYNAMIC_FTRACE default y