On 21/11/2025 01.24, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
> master
> head: 88cbd8ac379cf5ce68b7efcfd4d1484a6871ee0b
> commit: 0b08fc292842a13aa496413b48c1efb83573b8c6 [4806/10599] rust: introduce
> module_param module
> config: um-randconfig-001-20251121
> (https://download.01.org/0day-ci/archive/20251121/[email protected]/config)
> compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project
> 9e9fe08b16ea2c4d9867fb4974edf2a3776d6ece)
> rustc: rustc 1.88.0 (6b00bc388 2025-06-23)
> reproduce (this is a W=1 build):
> (https://download.01.org/0day-ci/archive/20251121/[email protected]/reproduce)
We can't reproduce this.
If anyone cares, please let us know how to reproduce it.
Tested on Debian testing x86_64 host.
rustc --version
rustc 1.91.1 (ed61e7d7e 2025-11-07
/home/dagomez/0day/llvm-22.0.0-e19fa930ca838715028c00c234874d1db4f93154-20250918-184558-x86_64/bin/clang-22
--version
ClangBuiltLinux clang version 22.0.0git
(https://github.com/llvm/llvm-project.git
e19fa930ca838715028c00c234874d1db4f93154)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir:
/home/dagomez/0day/llvm-22.0.0-e19fa930ca838715028c00c234874d1db4f93154-20250918-184558-x86_64/bin
561 wget
https://download.01.org/0day-ci/archive/20251121/[email protected]/config
563 git clone https://github.com/intel/lkp-tests.git ~/lkp-tests
565 mkdir -p build_dir && cp config build_dir/.config
571 COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang-22
~/lkp-tests/kbuild/make.cross W=1 O=build_dir ARCH=um olddefconfig
572 COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang-22
~/lkp-tests/kbuild/make.cross W=1 O=build_dir ARCH=um prepare
573 COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang-22
~/lkp-tests/kbuild/make.cross W=1 O=build_dir ARCH=um -j$(nproc)
I'm just getting these warnings:
...
In file included from ../arch/um/include/asm/io.h:24:
../include/asm-generic/io.h:1209:55: warning: performing pointer arithmetic on
a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
1209 | return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
| ~~~~~~~~~~ ^
In file included from ../drivers/gpu/drm/nouveau/nvc0_fence.c:24:
In file included from ../drivers/gpu/drm/nouveau/nouveau_drv.h:42:
In file included from ../drivers/gpu/drm/nouveau/include/nvif/client.h:5:
In file included from ../drivers/gpu/drm/nouveau/include/nvif/object.h:4:
In file included from ../drivers/gpu/drm/nouveau/include/nvif/os.h:8:
In file included from ../include/linux/pci.h:38:
In file included from ../include/linux/interrupt.h:11:
In file included from ../include/linux/hardirq.h:11:
In file included from ../arch/um/include/asm/hardirq.h:5:
In file included from ../include/asm-generic/hardirq.h:17:
In file included from ../include/linux/irq.h:20:
In file included from ../include/linux/io.h:12:
In file included from ../arch/um/include/asm/io.h:24:
../include/asm-generic/io.h:1209:55: warning: performing pointer arithmetic on
a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
1209 | return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
| ~~~~~~~~~~ ^
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
In file included from ../drivers/gpu/drm/nouveau/gv100_fence.c:5:
In file included from ../drivers/gpu/drm/nouveau/nouveau_drv.h:42:
In file included from ../drivers/gpu/drm/nouveau/include/nvif/client.h:5:
In file included from ../drivers/gpu/drm/nouveau/include/nvif/object.h:4:
In file included from ../drivers/gpu/drm/nouveau/include/nvif/os.h:8:
In file included from ../include/linux/pci.h:38:
In file included from ../include/linux/interrupt.h:11:
In file included from ../include/linux/hardirq.h:11:
In file included from ../arch/um/include/asm/hardirq.h:5:
In file included from ../include/asm-generic/hardirq.h:17:
In file included from ../include/linux/irq.h:20:
In file included from ../include/linux/io.h:12:
In file included from ../arch/um/include/asm/io.h:24:
../include/asm-generic/io.h:1209:55: warning: performing pointer arithmetic on
a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
1209 | return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
| ~~~~~~~~~~ ^
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
AR drivers/gpu/drm/nouveau/built-in.a
AR drivers/gpu/drm/built-in.a
AR drivers/gpu/built-in.a
AR drivers/built-in.a
AR built-in.a
AR vmlinux.a
LD vmlinux.o
MODPOST vmlinux.symvers
CC .vmlinux.export.o
UPD include/generated/utsversion.h
CC init/version-timestamp.o
KSYMS .tmp_vmlinux0.kallsyms.S
AS .tmp_vmlinux0.kallsyms.o
LD .tmp_vmlinux1
/usr/bin/ld: warning: .tmp_vmlinux1 has a LOAD segment with RWX permissions
NM .tmp_vmlinux1.syms
KSYMS .tmp_vmlinux1.kallsyms.S
AS .tmp_vmlinux1.kallsyms.o
LD .tmp_vmlinux2
/usr/bin/ld: warning: .tmp_vmlinux2 has a LOAD segment with RWX permissions
NM .tmp_vmlinux2.syms
KSYMS .tmp_vmlinux2.kallsyms.S
AS .tmp_vmlinux2.kallsyms.o
LD vmlinux.unstripped
/usr/bin/ld: warning: vmlinux.unstripped has a LOAD segment with RWX permissions
NM System.map
OBJCOPY vmlinux
OBJCOPY modules.builtin.modinfo
GEN modules.builtin
LINK linux
make[1]: Leaving directory '/home/dagomez/ws/c131/kernel/vcs/modules/build_dir'
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version
> of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <[email protected]>
> | Closes:
> https://lore.kernel.org/oe-kbuild-all/[email protected]/
>
> All errors (new ones prefixed by >>):
>
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `get`
> --> rust/kernel/module_param.rs:166:13
> |
> 166 | get: None,
> | ^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 177 | make_param_ops!(PARAM_OPS_U32, u32);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `free`
> --> rust/kernel/module_param.rs:167:13
> |
> 167 | free: None,
> | ^^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 177 | make_param_ops!(PARAM_OPS_U32, u32);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `flags`
> --> rust/kernel/module_param.rs:164:13
> |
> 164 | flags: 0,
> | ^^^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 178 | make_param_ops!(PARAM_OPS_I64, i64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `set`
> --> rust/kernel/module_param.rs:165:13
> |
> 165 | set: Some(set_param::<$ty>),
> | ^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 178 | make_param_ops!(PARAM_OPS_I64, i64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `get`
> --> rust/kernel/module_param.rs:166:13
> |
> 166 | get: None,
> | ^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 178 | make_param_ops!(PARAM_OPS_I64, i64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `free`
> --> rust/kernel/module_param.rs:167:13
> |
> 167 | free: None,
> | ^^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 178 | make_param_ops!(PARAM_OPS_I64, i64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `flags`
> --> rust/kernel/module_param.rs:164:13
> |
> 164 | flags: 0,
> | ^^^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 179 | make_param_ops!(PARAM_OPS_U64, u64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `set`
> --> rust/kernel/module_param.rs:165:13
> |
> 165 | set: Some(set_param::<$ty>),
> | ^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 179 | make_param_ops!(PARAM_OPS_U64, u64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `get`
> --> rust/kernel/module_param.rs:166:13
> |
> 166 | get: None,
> | ^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 179 | make_param_ops!(PARAM_OPS_U64, u64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `free`
> --> rust/kernel/module_param.rs:167:13
> |
> 167 | free: None,
> | ^^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 179 | make_param_ops!(PARAM_OPS_U64, u64);
> | ----------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> --
>>> error[E0560]: struct `bindings::kernel_param_ops` has no field named `flags`
> --> rust/kernel/module_param.rs:164:13
> |
> 164 | flags: 0,
> | ^^^^^ `bindings::kernel_param_ops` does not have this field
> ...
> 180 | make_param_ops!(PARAM_OPS_ISIZE, isize);
> | --------------------------------------- in this macro invocation
> |
> = note: all struct fields are already assigned
> = note: this error originates in the macro `make_param_ops` (in Nightly
> builds, run with -Z macro-backtrace for more info)
> ..
>