diff options
| author | Miguel Ojeda <ojeda@kernel.org> | 2024-04-22 11:12:15 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-05-02 16:32:42 +0200 |
| commit | 2eed4381ee41759f29adc7e235b91e8978f8e948 (patch) | |
| tree | eb5d6686f09b4829139653d37370bbe63a7009ad /rust | |
| parent | 3a9337459645c189a692be0c78bc8a6e5649b7d2 (diff) | |
| download | linux-2eed4381ee41759f29adc7e235b91e8978f8e948.tar.gz linux-2eed4381ee41759f29adc7e235b91e8978f8e948.tar.bz2 linux-2eed4381ee41759f29adc7e235b91e8978f8e948.zip | |
kbuild: rust: remove unneeded `@rustc_cfg` to avoid ICE
commit 50cfe93b01475ba36878b65d35d812e1bb48ac71 upstream.
When KUnit tests are enabled, under very big kernel configurations
(e.g. `allyesconfig`), we can trigger a `rustdoc` ICE [1]:
RUSTDOC TK rust/kernel/lib.rs
error: the compiler unexpectedly panicked. this is a bug.
The reason is that this build step has a duplicated `@rustc_cfg` argument,
which contains the kernel configuration, and thus a lot of arguments. The
factor 2 happens to be enough to reach the ICE.
Thus remove the unneeded `@rustc_cfg`. By doing so, we clean up the
command and workaround the ICE.
The ICE has been fixed in the upcoming Rust 1.79 [2].
Cc: stable@vger.kernel.org
Fixes: a66d733da801 ("rust: support running Rust documentation tests as KUnit ones")
Link: https://github.com/rust-lang/rust/issues/122722 [1]
Link: https://github.com/rust-lang/rust/pull/122840 [2]
Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Link: https://lore.kernel.org/r/20240422091215.526688-1-ojeda@kernel.org
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'rust')
| -rw-r--r-- | rust/Makefile | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/rust/Makefile b/rust/Makefile index 7dbf9abe0d01..e5619f25b55c 100644 --- a/rust/Makefile +++ b/rust/Makefile @@ -173,7 +173,6 @@ quiet_cmd_rustdoc_test_kernel = RUSTDOC TK $< mkdir -p $(objtree)/$(obj)/test/doctests/kernel; \ OBJTREE=$(abspath $(objtree)) \ $(RUSTDOC) --test $(rust_flags) \ - @$(objtree)/include/generated/rustc_cfg \ -L$(objtree)/$(obj) --extern alloc --extern kernel \ --extern build_error --extern macros \ --extern bindings --extern uapi \ |
