Re: linux-next: build failure after merge of the rust tree
From: Stephen Rothwell
Date: Mon Mar 24 2025 - 07:09:50 EST
Hi all,
On Mon, 24 Mar 2025 21:57:02 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> After merging the rust tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> error[E0277]: `*mut MyStruct` cannot be sent between threads safely
> --> samples/rust/rust_dma.rs:47:22
> |
> 47 | impl pci::Driver for DmaSampleDriver {
> | ^^^^^^^^^^^^^^^ `*mut MyStruct` cannot be sent between threads safely
> |
> = help: within `DmaSampleDriver`, the trait `Send` is not implemented for `*mut MyStruct`, which is required by `DmaSampleDriver: Send`
> note: required because it appears within the type `CoherentAllocation<MyStruct>`
> --> rust/kernel/dma.rs:132:12
> note: required because it appears within the type `DmaSampleDriver`
> --> samples/rust/rust_dma.rs:9:8
> |
> 9 | struct DmaSampleDriver {
> | ^^^^^^^^^^^^^^^
> note: required by a bound in `kernel::pci::Driver`
> --> rust/kernel/pci.rs:225:1
>
> error: aborting due to 1 previous error
>
> For more information about this error, try `rustc --explain E0277`.
>
> I have no idea what caused this - it built in next-20250321, but that
> no longer builds, so I have reset to the version of the rust tree in
> next-20250320 (commit 4a47eec07be6).
Actually, the driver-core tree gained these commits over the weekend:
51d0de7596a4 ("rust: platform: require Send for Driver trait implementers")
935e1d90bf6f ("rust: pci: require Send for Driver trait implementers")
455943aa187f ("rust: platform: impl Send + Sync for platform::Device")
e2942bb4e629 ("rust: pci: impl Send + Sync for pci::Device")
A heads up would have been nice ... and maybe even a test merge and
build against -next (given how late we are in the cycle).
--
Cheers,
Stephen Rothwell
Attachment:
pgpfMfXwFDbYY.pgp
Description: OpenPGP digital signature