[PATCH] rust: enable fentry support
Paul Murphy <[email protected]> Fri, 24 Jul 2026 12:01:26 -0500
| Newsgroups | gmane.linux.kernel,gmane.linux.kbuild.devel,gmane.linux.kernel.rust |
|---|---|
| Message-ID | <[email protected]> |
Turn it on when available if CONFIG_HAVE_FENTRY=y. Rust support was added in 1.98.0 with support for x86 and s390x targets. Signed-off-by: Paul Murphy <[email protected]> --- Makefile | 2 ++ scripts/generate_rust_target.rs | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Makefile b/Makefile index bfb47ad8cb9a..bdfe93702a33 100644 --- a/Makefile +++ b/Makefile @@ -1053,10 +1053,12 @@ ifdef CONFIG_HAVE_FENTRY CC_FLAGS_FTRACE += -mfentry CC_FLAGS_USING += -DCC_USING_FENTRY endif + RUSTFLAGS_FTRACE := $(if $(call rustc-min-version,109800),-Zinstrument-mcount=fentry,) endif export CC_FLAGS_FTRACE KBUILD_CFLAGS += $(CC_FLAGS_FTRACE) $(CC_FLAGS_USING) KBUILD_AFLAGS += $(CC_FLAGS_USING) +KBUILD_RUSTFLAGS += $(RUSTFLAGS_FTRACE) endif # We trigger additional mismatches with less inlining diff --git a/scripts/generate_rust_target.rs b/scripts/generate_rust_target.rs index 3bf296581a88..eb80a06d50d3 100644 --- a/scripts/generate_rust_target.rs +++ b/scripts/generate_rust_target.rs @@ -198,6 +198,7 @@ fn main() { ts.push("arch", "x86_64"); if cfg.rustc_version_atleast(1, 98, 0) { ts.push("rustc-abi", "softfloat"); + ts.push("supports-fentry", true); } else if cfg.rustc_version_atleast(1, 86, 0) { ts.push("rustc-abi", "x86-softfloat"); } @@ -240,6 +241,7 @@ fn main() { ts.push("arch", "x86"); if cfg.rustc_version_atleast(1, 98, 0) { ts.push("rustc-abi", "softfloat"); + ts.push("supports-fentry", true); } else if cfg.rustc_version_atleast(1, 86, 0) { ts.push("rustc-abi", "x86-softfloat"); } base-commit: 7059bdf4f04a3e14f4fafb3ac35fdca913e3e21a -- 2.55.0