[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANiq72mjFobjfQEtNvk9aA+757RkLpcfmCCEJAH69ZYsr67GdA@mail.gmail.com>
Date: Tue, 11 Nov 2025 14:54:36 +0100
From: Miguel Ojeda <miguel.ojeda.sandonis@...il.com>
To: Miguel Ojeda <ojeda@...nel.org>
Cc: Sami Tolvanen <samitolvanen@...gle.com>, Alex Gaynor <alex.gaynor@...il.com>,
linux-modules@...r.kernel.org, linux-kbuild@...r.kernel.org,
Boqun Feng <boqun.feng@...il.com>, Gary Guo <gary@...yguo.net>,
Björn Roy Baron <bjorn3_gh@...tonmail.com>,
Benno Lossin <lossin@...nel.org>, Andreas Hindborg <a.hindborg@...nel.org>,
Alice Ryhl <aliceryhl@...gle.com>, Trevor Gross <tmgross@...ch.edu>,
Danilo Krummrich <dakr@...nel.org>, rust-for-linux@...r.kernel.org,
linux-kernel@...r.kernel.org, patches@...ts.linux.dev, stable@...r.kernel.org,
Haiyue Wang <haiyuewa@....com>
Subject: Re: [PATCH v2] gendwarfksyms: Skip files with no exports
On Mon, Nov 10, 2025 at 2:19 PM Miguel Ojeda <ojeda@...nel.org> wrote:
>
> From: Sami Tolvanen <samitolvanen@...gle.com>
>
> Starting with Rust 1.91.0 (released 2025-10-30), in upstream commit
> ab91a63d403b ("Ignore intrinsic calls in cross-crate-inlining cost model")
> [1][2], `bindings.o` stops containing DWARF debug information because the
> `Default` implementations contained `write_bytes()` calls which are now
> ignored in that cost model (note that `CLIPPY=1` does not reproduce it).
>
> This means `gendwarfksyms` complains:
>
> RUSTC L rust/bindings.o
> error: gendwarfksyms: process_module: dwarf_get_units failed: no debugging information?
>
> There are several alternatives that would work here: conditionally
> skipping in the cases needed (but that is subtle and brittle), forcing
> DWARF generation with e.g. a dummy `static` (ugly and we may need to
> do it in several crates), skipping the call to the tool in the Kbuild
> command when there are no exports (fine) or teaching the tool to do so
> itself (simple and clean).
>
> Thus do the last one: don't attempt to process files if we have no symbol
> versions to calculate.
>
> [ I used the commit log of my patch linked below since it explained the
> root issue and expanded it a bit more to summarize the alternatives.
>
> - Miguel ]
>
> Cc: stable@...r.kernel.org # Needed in 6.12.y and later (Rust is pinned in older LTSs).
> Reported-by: Haiyue Wang <haiyuewa@....com>
> Closes: https://lore.kernel.org/rust-for-linux/b8c1c73d-bf8b-4bf2-beb1-84ffdcd60547@163.com/
> Suggested-by: Miguel Ojeda <ojeda@...nel.org>
> Link: https://lore.kernel.org/rust-for-linux/CANiq72nKC5r24VHAp9oUPR1HVPqT+=0ab9N0w6GqTF-kJOeiSw@mail.gmail.com/
> Link: https://github.com/rust-lang/rust/commit/ab91a63d403b0105cacd72809cd292a72984ed99 [1]
> Link: https://github.com/rust-lang/rust/pull/145910 [2]
> Signed-off-by: Sami Tolvanen <samitolvanen@...gle.com>
> Signed-off-by: Miguel Ojeda <ojeda@...nel.org>
I will send a couple other fixes to Linus this week, so if nobody
shouts, I will be picking this one.
Thanks!
Cheers,
Miguel
Powered by blists - more mailing lists