]> git.ipfire.org Git - thirdparty/linux.git/commit
tracing: Remove redundant config HAVE_FTRACE_MCOUNT_RECORD
authorSteven Rostedt <rostedt@goodmis.org>
Fri, 4 Jul 2025 14:48:38 +0000 (10:48 -0400)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Wed, 23 Jul 2025 00:15:56 +0000 (20:15 -0400)
commit4d6d0a6263babf7c43faa55de4fa3c6637dec624
tree17c2a7509f4ddd4c9844a65750bb44b899a2b6c7
parent9b4d5d330fcd40bbc38a1e6ed3d617e674d651fa
tracing: Remove redundant config HAVE_FTRACE_MCOUNT_RECORD

Ftrace is tightly coupled with architecture specific code because it
requires the use of trampolines written in assembly. This means that when
a new feature or optimization is made, it must be done for all
architectures. To simplify the approach, CONFIG_HAVE_FTRACE_* configs are
added to denote which architecture has the new enhancement so that other
architectures can still function until they too have been updated.

The CONFIG_HAVE_FTRACE_MCOUNT was added to help simplify the
DYNAMIC_FTRACE work, but now every architecture that implements
DYNAMIC_FTRACE also has HAVE_FTRACE_MCOUNT set too, making it redundant
with the HAVE_DYNAMIC_FTRACE.

Remove the HAVE_FTRACE_MCOUNT config and use DYNAMIC_FTRACE directly where
applicable.

Link: https://lore.kernel.org/all/20250703154916.48e3ada7@gandalf.local.home/
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/20250704104838.27a18690@gandalf.local.home
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
22 files changed:
Documentation/trace/ftrace-design.rst
arch/arm/Kconfig
arch/arm64/Kconfig
arch/csky/Kconfig
arch/loongarch/Kconfig
arch/microblaze/Kconfig
arch/mips/Kconfig
arch/parisc/Kconfig
arch/powerpc/Kconfig
arch/riscv/Kconfig
arch/s390/Kconfig
arch/sh/Kconfig
arch/sparc/Kconfig
arch/x86/Kconfig
include/asm-generic/vmlinux.lds.h
include/linux/ftrace.h
include/linux/kernel.h
include/linux/module.h
kernel/module/main.c
kernel/trace/Kconfig
kernel/trace/ftrace.c
scripts/recordmcount.pl