Skip to content

Commit

Permalink
rust: remove unneeded @rustc_cfg to avoid ICE
Browse files Browse the repository at this point in the history
When KUnit tests are enabled, under very big kernel configurations
(e.g. `allyesconfig`), we may trigger an ICE in `rustdoc` [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`, workarounding the ICE and cleaning
up the command.

The ICE has been fixed for the upcoming Rust 1.79 [2].

Cc: stable@vger.kernel.org
Fixes: a66d733 ("rust: support running Rust documentation tests as KUnit ones")
Link: rust-lang/rust#122722 [1]
Link: rust-lang/rust#122840 [2]
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
  • Loading branch information
ojeda committed Apr 22, 2024
1 parent 4cece76 commit 3c03186
Showing 1 changed file with 0 additions and 1 deletion.
1 change: 0 additions & 1 deletion rust/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,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 \
Expand Down

0 comments on commit 3c03186

Please sign in to comment.