Re: [PATCH 6.14 000/731] 6.14.2-rc1 review
From: Greg Kroah-Hartman
Date: Tue Apr 08 2025 - 10:14:10 EST
On Tue, Apr 08, 2025 at 03:16:31PM +0200, Thorsten Leemhuis wrote:
> On 08.04.25 12:38, Greg Kroah-Hartman wrote:
> > This is the start of the stable review cycle for the 6.14.2 release.
> > There are 731 patches in this series, all will be posted as a response
> > to this one. If anyone has any issues with these being applied, please
> > let me know.
>
> Compiling for Fedora failed for me:
>
>
> """
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/pci.rs:69:58
> |
> 69 | let pdev = unsafe { &*pdev.cast::<Device<device::Core>>() };
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/pci.rs:240:35
> |
> 240 | fn probe(dev: &Device<device::Core>, id_info: &Self::IdInfo) -> Result<Pin<KBox<Self>>>;
> | ^^^^ not found in `device`
>
> error[E0405]: cannot find trait `DeviceContext` in module `device`
> --> rust/kernel/pci.rs:253:32ich of
> |
> 253 | pub struct Device<Ctx: device::DeviceContext = device::Normal>(
> | ^^^^^^^^^^^^^ not found in `device`
>
> error[E0412]: cannot find type `Normal` in module `device`
> --> rust/kernel/pci.rs:253:56
> |
> 253 | pub struct Device<Ctx: device::DeviceCchangeontext = device::Normal>(
> | ^^^^^^ not found in `device`
> |
> help: there is an enum variant `core::intrinsics::mir::BasicBlock::Normal` and 1 other; try using the variant's enum
> |
> 253 | pub struct Device<Ctx: device::DeviceContext = core::intrinsics::mir::BasicBlock>(
> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 253 | pub struct Device<Ctx: device::DeviceContext = core::num::FpCategory>(
> | ~~~~~~~~~~~~~~~~~~~~~
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/pci.rs:411:21
> |
> 411 | impl Device<device::Core> {
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/pci.rs:425:31
> |
> 425 | impl Deref for Device<device::Core> {
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/pci.rs:439:27
> |
> 439 | impl From<&Device<device::Core>> for ARef<Device> {
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/pci.rs:440:34
> |
> 440 | fn from(dev: &Device<device::Core>) -> Self {
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/platform.rs:65:58
> |
> 65 | let pdev = unsafe { &*pdev.cast::<Device<device::Core>>() };
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/platform.rs:167:35
> |
> 167 | fn probe(dev: &Device<device::Core>, id_info: Option<&Self::IdInfo>)
> | ^^^^ not found in `device`
>
> error[E0405]: cannot find trait `DeviceContext` in module `device`
> --> rust/kernel/platform.rs:182:32
> |
> 182 | pub struct Device<Ctx: device::DeviceContext = device::Normal>(
> | ^^^^^^^^^^^^^ not found in `device`
>
> error[E0412]: cannot find type `Normal` in module `device`
> --> rust/kernel/platform.rs:182:56
> |
> 182 | pub struct Device<Ctx: device::DeviceContext = device::Normal>(
> | ^^^^^^ not found in `device`
> |
> help: there is an enum variant `core::intrinsics::mir::BasicBlock::Normal` and 1 other; try using the variant's enum
> |
> 182 | pub struct Device<Ctx: device::DeviceContext = core::intrinsics::mir::BasicBlock>(
> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 182 | pub struct Device<Ctx: device::DeviceContext = core::num::FpCategory>(
> | ~~~~~~~~~~~~~~~~~~~~~
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/platform.rs:193:31
> |
> 193 | impl Deref for Device<device::Core> {
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/platform.rs:207:27
> |
> 207 | impl From<&Device<device::Core>> for ARef<Device> {
> | ^^^^ not found in `device`
>
> error[E0412]: cannot find type `Core` in module `device`
> --> rust/kernel/platform.rs:208:34
> |
> 208 | fn from(dev: &Device<device::Core>) -> Self {
> | ^^^^ not found in `device`
>
> error: aborting due to 15 previous errors
>
> Some errors have detailed explanations: E0405, E0412.
> For more information about an error, try `rustc --explain E0405`.
> make[2]: *** [rust/Makefile:482: rust/kernel.o] Error 1
> make[1]: *** [/builddir/build/BUILD/kernel-6.14.2-build/kernel-6.14.2-rc1/linux-6.14.2-0.rc1.300.vanilla.fc42.x86_64/Makefile:1283: prepare] Error 2
> make: *** [Makefile:259: __sub-make] Error 2
> """
>
>
> >From a quick look there seem to be three changes in this set that touch
> rust/kernel/pci.rs; if needed, I can take a closer look later or tomorrow
> what exactly is causing trouble (I just hope it's no new build requirement
> missing on my side or something like that).
Hm, odd, I thought I was testing Rust builds on my build system but
obviously not. I'll go work on this later tonight...
thanks,
greg k-h