From: kernel test robot <lkp@intel.com>
To: Markus Probst <markus.probst@posteo.de>,
Danilo Krummrich <dakr@kernel.org>,
Miguel Ojeda <ojeda@kernel.org>,
Alex Gaynor <alex.gaynor@gmail.com>, Lee Jones <lee@kernel.org>,
Pavel Machek <pavel@kernel.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
Vlastimil Babka <vbabka@suse.cz>,
"Liam R. Howlett" <Liam.Howlett@oracle.com>,
Uladzislau Rezki <urezki@gmail.com>,
Boqun Feng <boqun.feng@gmail.com>, Gary Guo <gary@garyguo.net>,
bjorn3_gh@protonmail.com, Benno Lossin <lossin@kernel.org>,
Andreas Hindborg <a.hindborg@kernel.org>,
Alice Ryhl <aliceryhl@google.com>,
Trevor Gross <tmgross@umich.edu>,
Markus Probst <markus.probst@posteo.de>,
rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-leds@vger.kernel.org
Subject: Re: [PATCH v3 2/2] rust: leds: add basic led classdev abstractions
Date: Sun, 12 Oct 2025 18:40:52 +0800 [thread overview]
Message-ID: <202510121801.TbAguq2S-lkp@intel.com> (raw)
In-Reply-To: <20251010225349.734350-3-markus.probst@posteo.de>
Hi Markus,
kernel test robot noticed the following build errors:
[auto build test ERROR on lee-leds/for-leds-next]
[also build test ERROR on v6.17]
[cannot apply to rust/rust-next rust/alloc-next linus/master next-20251010]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Markus-Probst/rust-add-basic-Pin-Vec-T-A-abstractions/20251011-065458
base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/leds.git for-leds-next
patch link: https://lore.kernel.org/r/20251010225349.734350-3-markus.probst%40posteo.de
patch subject: [PATCH v3 2/2] rust: leds: add basic led classdev abstractions
config: x86_64-rhel-9.4-rust (https://download.01.org/0day-ci/archive/20251012/202510121801.TbAguq2S-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
rustc: rustc 1.88.0 (6b00bc388 2025-06-23)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251012/202510121801.TbAguq2S-lkp@intel.com/reproduce)
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 <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202510121801.TbAguq2S-lkp@intel.com/
All errors (new ones prefixed by >>):
>> error[E0277]: the trait bound `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>: LedOps` is not satisfied
--> rust/doctests_kernel_generated.rs:6097:6
|
6097 | / KBox::pin_init(led::Device::new(
6098 | | None,
6099 | | None,
6100 | | led::InitData::new()
6101 | | .default_label(c_str!("my_led")),
6102 | | MyLedOps,
6103 | | ))
| |_______^ the trait `LedOps` is not implemented for `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
|
= help: the trait `LedOps` is implemented for `MyLedOps`
note: required by a bound in `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::Device`
--> rust/kernel/led.rs:26:22
|
26 | pub struct Device<T: LedOps> {
| ^^^^^^ required by this bound in `Device`
--
>> error[E0277]: `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>` cannot be shared between threads safely
--> rust/doctests_kernel_generated.rs:6097:6
|
6097 | / KBox::pin_init(led::Device::new(
6098 | | None,
6099 | | None,
6100 | | led::InitData::new()
6101 | | .default_label(c_str!("my_led")),
6102 | | MyLedOps,
6103 | | ))
| |_______^ `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>` cannot be shared between threads safely
|
= help: within `FwNode`, the trait `Sync` is not implemented for `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>`
note: required because it appears within the type `Opaque<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>`
--> rust/kernel/types.rs:324:12
|
324 | pub struct Opaque<T> {
| ^^^^^^
note: required because it appears within the type `FwNode`
--> rust/kernel/device/property.rs:35:12
|
35 | pub struct FwNode(Opaque<bindings::fwnode_handle>);
| ^^^^^^
= note: required for `&FwNode` to implement `Send`
note: required because it appears within the type `Option<&FwNode>`
--> /opt/cross/rustc-1.88.0-bindgen-0.72.0/rustup/toolchains/1.88.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/option.rs:589:10
|
589 | pub enum Option<T> {
| ^^^^^^
note: required because it appears within the type `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
--> rust/kernel/led.rs:36:12
|
36 | pub struct InitData<'a> {
| ^^^^^^^^
= note: required for `Device<InitData<'_>>` to implement `Send`
note: required by a bound in `Devres`
--> rust/kernel/devres.rs:108:22
|
108 | pub struct Devres<T: Send> {
| ^^^^ required by this bound in `Devres`
= note: the full name for the type has been written to 'rust/doctests_kernel_generated.long-type-938713932875159562.txt'
= note: consider using `--verbose` to print the full type name to the console
--
>> error[E0107]: missing generics for struct `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::Device`
--> rust/doctests_kernel_generated.rs:6096:47
|
6096 | fn register_my_led() -> Result<Pin<KBox<led::Device>>> {
| ^^^^^^ expected 1 generic argument
|
note: struct defined here, with 1 generic parameter: `T`
--> rust/kernel/led.rs:26:12
|
26 | pub struct Device<T: LedOps> {
| ^^^^^^ -
help: add missing generic argument
|
6096 | fn register_my_led() -> Result<Pin<KBox<led::Device<T>>>> {
| +++
--
>> error[E0277]: the trait bound `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>: LedOps` is not satisfied
--> rust/doctests_kernel_generated.rs:6100:10
|
6097 | KBox::pin_init(led::Device::new(
| ---------------- required by a bound introduced by this call
...
6100 | / led::InitData::new()
6101 | | .default_label(c_str!("my_led")),
| |_____________________________________________^ the trait `LedOps` is not implemented for `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
|
= help: the trait `LedOps` is implemented for `MyLedOps`
note: required by a bound in `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::Device::<T>::new`
--> rust/kernel/led.rs:168:9
|
168 | impl<T: LedOps> Device<T> {
| ^^^^^^ required by this bound in `Device::<T>::new`
...
172 | pub fn new<'a>(
| --- required by a bound in this associated function
--
>> error[E0277]: the trait bound `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>: LedOps` is not satisfied
--> rust/doctests_kernel_generated.rs:6097:21
|
6097 | KBox::pin_init(led::Device::new(
| _____________________^
6098 | | None,
6099 | | None,
6100 | | led::InitData::new()
6101 | | .default_label(c_str!("my_led")),
6102 | | MyLedOps,
6103 | | ))
| |______^ the trait `LedOps` is not implemented for `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
|
= help: the trait `LedOps` is implemented for `MyLedOps`
note: required by a bound in `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::Device<T>`
--> rust/kernel/led.rs:168:9
|
168 | impl<T: LedOps> Device<T> {
| ^^^^^^ required by this bound in `Device<T>`
--
>> error[E0277]: the trait bound `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>: LedOps` is not satisfied
--> rust/doctests_kernel_generated.rs:6097:6
|
6097 | KBox::pin_init(led::Device::new(
| ^^^^^^^^^^^^^^ the trait `LedOps` is not implemented for `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
|
= help: the trait `LedOps` is implemented for `MyLedOps`
note: required by a bound in `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::Device`
--> rust/kernel/led.rs:26:22
|
26 | pub struct Device<T: LedOps> {
| ^^^^^^ required by this bound in `Device`
--
>> error[E0277]: `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>` cannot be shared between threads safely
--> rust/doctests_kernel_generated.rs:6097:6
|
6097 | KBox::pin_init(led::Device::new(
| ^^^^^^^^^^^^^^ `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>` cannot be shared between threads safely
|
= help: within `FwNode`, the trait `Sync` is not implemented for `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>`
note: required because it appears within the type `Opaque<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>`
--> rust/kernel/types.rs:324:12
|
324 | pub struct Opaque<T> {
| ^^^^^^
note: required because it appears within the type `FwNode`
--> rust/kernel/device/property.rs:35:12
|
35 | pub struct FwNode(Opaque<bindings::fwnode_handle>);
| ^^^^^^
= note: required for `&FwNode` to implement `Send`
note: required because it appears within the type `Option<&FwNode>`
--> /opt/cross/rustc-1.88.0-bindgen-0.72.0/rustup/toolchains/1.88.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/option.rs:589:10
|
589 | pub enum Option<T> {
| ^^^^^^
note: required because it appears within the type `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
--> rust/kernel/led.rs:36:12
|
36 | pub struct InitData<'a> {
| ^^^^^^^^
= note: required for `Device<InitData<'_>>` to implement `Send`
note: required by a bound in `Devres`
--> rust/kernel/devres.rs:108:22
|
108 | pub struct Devres<T: Send> {
| ^^^^ required by this bound in `Devres`
= note: the full name for the type has been written to 'rust/doctests_kernel_generated.long-type-938713932875159562.txt'
= note: consider using `--verbose` to print the full type name to the console
--
>> error[E0277]: the trait bound `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>: LedOps` is not satisfied
--> rust/doctests_kernel_generated.rs:6097:6
|
6097 | KBox::pin_init(led::Device::new(
| ^^^^ the trait `LedOps` is not implemented for `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
|
= help: the trait `LedOps` is implemented for `MyLedOps`
note: required by a bound in `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::Device`
--> rust/kernel/led.rs:26:22
|
26 | pub struct Device<T: LedOps> {
| ^^^^^^ required by this bound in `Device`
--
>> error[E0277]: `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>` cannot be shared between threads safely
--> rust/doctests_kernel_generated.rs:6097:6
|
6097 | KBox::pin_init(led::Device::new(
| ^^^^ `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>` cannot be shared between threads safely
|
= help: within `FwNode`, the trait `Sync` is not implemented for `UnsafeCell<MaybeUninit<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>>`
note: required because it appears within the type `Opaque<rust_doctest_kernel_alloc_kbox_rs_7::kernel::bindings::fwnode_handle>`
--> rust/kernel/types.rs:324:12
|
324 | pub struct Opaque<T> {
| ^^^^^^
note: required because it appears within the type `FwNode`
--> rust/kernel/device/property.rs:35:12
|
35 | pub struct FwNode(Opaque<bindings::fwnode_handle>);
| ^^^^^^
= note: required for `&FwNode` to implement `Send`
note: required because it appears within the type `Option<&FwNode>`
--> /opt/cross/rustc-1.88.0-bindgen-0.72.0/rustup/toolchains/1.88.0-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/option.rs:589:10
|
589 | pub enum Option<T> {
| ^^^^^^
note: required because it appears within the type `rust_doctest_kernel_alloc_kbox_rs_7::kernel::led::InitData<'_>`
--> rust/kernel/led.rs:36:12
|
36 | pub struct InitData<'a> {
| ^^^^^^^^
= note: required for `Device<InitData<'_>>` to implement `Send`
note: required by a bound in `Devres`
--> rust/kernel/devres.rs:108:22
|
108 | pub struct Devres<T: Send> {
| ^^^^ required by this bound in `Devres`
= note: the full name for the type has been written to 'rust/doctests_kernel_generated.long-type-938713932875159562.txt'
= note: consider using `--verbose` to print the full type name to the console
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2025-10-12 10:41 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-10 22:53 [PATCH v3 0/2] rust: leds: add led classdev abstractions Markus Probst
2025-10-10 22:53 ` [PATCH v3 1/2] rust: add basic Pin<Vec<T, A>> abstractions Markus Probst
2025-10-10 22:53 ` [PATCH v3 2/2] rust: leds: add basic led classdev abstractions Markus Probst
2025-10-12 10:40 ` kernel test robot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202510121801.TbAguq2S-lkp@intel.com \
--to=lkp@intel.com \
--cc=Liam.Howlett@oracle.com \
--cc=a.hindborg@kernel.org \
--cc=alex.gaynor@gmail.com \
--cc=aliceryhl@google.com \
--cc=bjorn3_gh@protonmail.com \
--cc=boqun.feng@gmail.com \
--cc=dakr@kernel.org \
--cc=gary@garyguo.net \
--cc=lee@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=lorenzo.stoakes@oracle.com \
--cc=lossin@kernel.org \
--cc=markus.probst@posteo.de \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=ojeda@kernel.org \
--cc=pavel@kernel.org \
--cc=rust-for-linux@vger.kernel.org \
--cc=tmgross@umich.edu \
--cc=urezki@gmail.com \
--cc=vbabka@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).