linux-next: build failure in final build
From: Mark Brown
Date: Thu Mar 26 2026 - 12:12:49 EST
Hi all,
During the final builds, today's linux-next build (arm64 allyesconfig)
failed like this:
error[E0405]: cannot find trait `AlwaysRefCounted` in module
`$crate::types`
--> /tmp/next/build/rust/kernel/drm/gem/mod.rs:42:62
|
42 | unsafe impl $( <$( $tparam_id ),+> )? $crate::types::AlwaysRefCounted
for $type
| ^^^^^^^^^^^^^^^^
| not
| found in
| `$crate::types`
... 308 | impl_aref_for_gem_obj!(impl<T> for Object<T> where T:
DriverObject);
| -------------------------------------------------------------------
| in this macro invocation
|
= note: this error originates in the macro `impl_aref_for_gem_obj` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider importing this trait
|
7 + use crate::sync::aref::AlwaysRefCounted;
|
error[E0277]: the trait bound `Object<T>: aref::AlwaysRefCounted` is
not satisfied
--> /tmp/next/build/rust/kernel/drm/gem/mod.rs:142:41
|
142 | impl<T: DriverObject> IntoGEMObject for Object<T> {
| ^^^^^^^^^ the trait
| `aref::AlwaysRefCounted`
| is not implemented for
| `Object<T>`
|
= help: the following other types implement trait `aref::AlwaysRefCounted`:
Chip<T>
Credential
FwNode
I2cAdapter
I2cClient
Interface
LocalFile
Mm
and 12 others
note: required by a bound in `IntoGEMObject`
--> /tmp/next/build/rust/kernel/drm/gem/mod.rs:96:59
|
96 | pub trait IntoGEMObject: Sized + super::private::Sealed +
AlwaysRefCounted {
| ^^^^^^^^^^^^^^^^
| required
| by this
| bound in
| `IntoGEMObject`
error[E0277]: the trait bound `Object<T>: aref::AlwaysRefCounted` is
not satisfied
--> /tmp/next/build/rust/kernel/drm/gem/mod.rs:320:37
|
320 | impl<T: DriverObject> AllocImpl for Object<T> {
| ^^^^^^^^^ the trait
| `aref::AlwaysRefCounted` is
| not implemented for `Object<T>`
|
= help: the following other types implement trait `aref::AlwaysRefCounted`:
Chip<T>
Credential
FwNode
I2cAdapter
I2cClient
Interface
LocalFile
Mm
and 12 others
note: required for `Object<T>` to implement `IntoGEMObject`
--> /tmp/next/build/rust/kernel/drm/gem/mod.rs:96:11
|
96 | pub trait IntoGEMObject: Sized + super::private::Sealed +
AlwaysRefCounted {
| ^^^^^^^^^^^^^
note: required by a bound in `AllocImpl`
--> /tmp/next/build/rust/kernel/drm/driver.rs:90:47
|
90 | pub trait AllocImpl: super::private::Sealed + drm::gem::IntoGEMObject
{
| ^^^^^^^^^^^^^^^^^^^^^^^
| required by this
| bound in `AllocImpl`
error: aborting due to 3 previous errors
Some errors have detailed explanations: E0277, E0405. For more
information about an error, try `rustc --explain E0277`.
Presumably caused by one of these commits:
442ba16a5a513 (rust: gem: Introduce DriverObject::Args)
e64b9cc293ae7 (rust: drm: Add gem::impl_aref_for_gem_obj!)
I have ignored this for today.
Attachment:
signature.asc
Description: PGP signature