[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260205131815.2943152-2-mlksvender@gmail.com>
Date: Thu, 5 Feb 2026 22:18:15 +0900
From: HeeSu Kim <mlksvender@...il.com>
To: nathan@...nel.org
Cc: a.hindborg@...nel.org,
aliceryhl@...gle.com,
bjorn3_gh@...tonmail.com,
boqun@...gle.com,
charmitro@...teo.net,
dakr@...nel.org,
gary@...yguo.net,
linux-kbuild@...r.kernel.org,
linux-kernel@...r.kernel.org,
lossin@...nel.org,
miguel.ojeda.sandonis@...il.com,
nsc@...nel.org,
ojeda@...nel.org,
rust-for-linux@...r.kernel.org,
stable@...r.kernel.org,
tmgross@...ch.edu,
HeeSu Kim <mlksvender@...il.com>
Subject: [PATCH v5 2/2] rust: Makefile: bound rustdoc workaround to affected versions
The `-Cunsafe-allow-abi-mismatch=fixed-x18` workaround was added to
handle a rustdoc bug where target modifiers were not properly saved [1].
This bug was fixed in Rust 1.90.0 [2]. Restrict the workaround to only
apply for Rust 1.88.x and 1.89.x versions that are affected by the
bug, preserving ABI compatibility checks on newer compiler versions.
Link: https://github.com/rust-lang/rust/issues/144521 [1]
Link: https://github.com/rust-lang/rust/pull/144523 [2]
Suggested-by: Gary Guo <gary@...yguo.net>
Link: https://lore.kernel.org/rust-for-linux/DG4JM9PU51M0.1YRGM9HVTY24U@garyguo.net/
Cc: stable@...r.kernel.org # Useful in 6.18.y and later.
Acked-by: Nathan Chancellor <nathan@...nel.org>
Signed-off-by: HeeSu Kim <mlksvender@...il.com>
---
Changes in v5:
- Split rustc-max-version macro into separate patch for easier backporting
Changes in v4:
- Add rustc-max-version macro for cleaner version bounds
- Use rustc-max-version instead of test-lt for readability
Changes in v3:
- Remove Fixes: tag (this is a feature, not a fix)
- Use full URLs with Link: tags instead of GitHub-style references
- Add Link: to lore.kernel.org for Suggested-by attribution
- Add Cc: stable for potential backporting to 6.18.y
Changes in v2:
- Change approach: bound to affected Rust versions instead of ARM64-only
(the flag is simply ignored on non-ARM64 architectures)
rust/Makefile | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/rust/Makefile b/rust/Makefile
index 5c0155b83454..1e8a75bc2878 100644
--- a/rust/Makefile
+++ b/rust/Makefile
@@ -136,7 +136,8 @@ pin_init-flags := \
# `rustdoc` did not save the target modifiers, thus workaround for
# the time being (https://github.com/rust-lang/rust/issues/144521).
-rustdoc_modifiers_workaround := $(if $(call rustc-min-version,108800),-Cunsafe-allow-abi-mismatch=fixed-x18)
+# The bug was fixed in Rust 1.90.0, so only apply for 1.88.x and 1.89.x.
+rustdoc_modifiers_workaround := $(if $(call rustc-min-version,108800),$(if $(call rustc-max-version,108999),-Cunsafe-allow-abi-mismatch=fixed-x18))
# Similarly, for doctests (https://github.com/rust-lang/rust/issues/146465).
doctests_modifiers_workaround := $(rustdoc_modifiers_workaround)$(if $(call rustc-min-version,109100),$(comma)sanitizer)
--
2.52.0
Powered by blists - more mailing lists