Re: [PATCH v14 0/3] rust: add basic serial device bus abstractions

Markus Probst <[email protected]>
Newsgroups org.kernel.vger.linux-serial,dev.linux.lists.driver-core,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pm,org.kernel.vger.rust-for-linux
Message-ID <[email protected]>
On Fri, 2026-07-17 at 14:20 +0200, Danilo Krummrich wrote:
> diff --git a/rust/kernel/serdev.rs b/rust/kernel/serdev.rs
> index 0ffcef1849d2..a1161dd9f37f 100644
> --- a/rust/kernel/serdev.rs
> +++ b/rust/kernel/serdev.rs
> @@ -174,7 +174,8 @@ extern "C" fn probe_callback(sdev: *mut bindings::serdev_device) -> kernel::ffi:
>          //
>          // INVARIANT: `sdev` is valid for the duration of `probe_callback()`.
>          let sdev = unsafe { &*sdev.cast::<Device<device::CoreInternal<'_>>>() };
> -        let info = <Self as driver::Adapter>::id_info(sdev.as_ref());
> +        // SAFETY: `sdev` has been matched by the serial device bus via its device ID table.
> +        let info = unsafe { <Self as driver::Adapter>::id_info(sdev.as_ref()) };
> 
>          from_result(|| {
>              sdev.as_ref().set_drvdata(try_pin_init!(PrivateData::<T> {
> @@ -334,7 +335,6 @@ macro_rules! module_serdev_device_driver {
>  ///
>  /// kernel::of_device_table!(
>  ///     OF_TABLE,
> -///     MODULE_OF_TABLE,
>  ///     <MyDriver as serdev::Driver>::IdInfo,
>  ///     [
>  ///         (of::DeviceId::new(c"test,device"), ())
> @@ -343,7 +343,6 @@ macro_rules! module_serdev_device_driver {
>  ///
>  /// kernel::acpi_device_table!(
>  ///     ACPI_TABLE,
> -///     MODULE_ACPI_TABLE,
>  ///     <MyDriver as serdev::Driver>::IdInfo,
>  ///     [
>  ///         (acpi::DeviceId::new(c"LNUXBEEF"), ())
> diff --git a/samples/rust/rust_driver_serdev.rs b/samples/rust/rust_driver_serdev.rs
> index a12b1412db30..51b4898cd855 100644
> --- a/samples/rust/rust_driver_serdev.rs
> +++ b/samples/rust/rust_driver_serdev.rs
> @@ -20,14 +20,12 @@ struct SampleDriver {
> 
>  kernel::of_device_table!(
>      OF_TABLE,
> -    MODULE_OF_TABLE,
>      <SampleDriver as serdev::Driver>::IdInfo,
>      [(of::DeviceId::new(c"test,rust_driver_serdev"), ())]
>  );
> 
>  kernel::acpi_device_table!(
>      ACPI_TABLE,
> -    MODULE_ACPI_TABLE,
>      <SampleDriver as serdev::Driver>::IdInfo,
>      [(acpi::DeviceId::new(c"LNUXBEEF"), ())]
>  );
Not sure if necessary for a conflict resolution, but

Reviewed-by: Markus Probst <[email protected]>

Thanks
- Markus Probst
signature.asc (application/pgp-signature, 870 B)
-----BEGIN PGP SIGNATURE-----

iQJPBAABCAA5FiEEgnQYxPSsWOdyMMRzNHYf+OetQ9IFAmpaI6YbFIAAAAAABAAO
bWFudTIsMi41KzEuMTIsMiwyAAoJEDR2H/jnrUPS+wUQALYoni5vQ2Czo26EJVRf
J5TBRI6jcBCZE0BY+EaF0HPtgsihN+sJGTYp7Q45jiJ2+bKXXslsRXX4DX0RutmE
KwwuGGKhsD07jqZct7GM7sSStTFXmMgErgt67oWuui/1CriwcMsIPxy4BzUf29/I
ub8J7X9X8ixHWEHm8teg7RNhHS7Ss3Oayb4l01vZMT/ySeYbXmXFaEE/lMLQkxwi
tbuvc62dLQ2DHNyy7bKGRLjbeeHbFTdeZAD7HGbL27hjBCI26k19acOmel3klzbG
dNGBz5bLxQruACDeZdhcvW57D2QE1lfwQKduDH+tNF+GJitsH5etG2d7GAoOufg4
rJIZqDbBc9qZeOJHdaru8o1OiPl0UKGU7eLbirGnldEhWFdzXAivsG6/OxLGX1em
0DEPUHv7Q8HensihCOyMqm+KHodFpDCwCbyqKWgloa3niq5j35qDEmvWMyqNRJYJ
XQ1HCxKsOpdxoBWWQ8Unltx3QROjLIu9744wZT3JiAiB6PD6UDAwJPnkAWOed3kY
K19XI+M5h8yHMK/EgFil3gG/I3OJSirrECrSUBRqbXfJqnVwuKRbLe0ptoE8EyVn
Bf11OPwoA+P6xZV7XYneuvkgiEKxeekt37nqfcXlT/x7E/urFYFNKBYKdnhT7AYW
QZOz2yhqd91xN2BJzIM55EUx
=WO7R
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.