Re: [PATCH 0/4] Re-export Zeroable and zeroed() from ffi module
From: Gary Guo
Date: Mon Jan 26 2026 - 08:16:06 EST
On Mon Jan 26, 2026 at 1:05 PM GMT, Alice Ryhl wrote:
> Currently, the Zeroable trait is defined by pin-init because pin-init
> happens to use the trait. However, zeroed types are useful for many
> purposes other than pin-init. Also, we wish to implement Zeroable for
> types generated by bindgen. For both of these reasons, re-export
> Zeroable from the ffi crate, which is a already dependency of the crates
> with bindgen output.
I don't see a benefit of re-exporting these from the `ffi` crate? Especially
that we re-export `ffi` crate from kernel crate anyway, and `Zeroable` is
already in the kernel prelude.
We already derive `Zeroable` for bindgen via `MaybeZeroable` derive in
rust/bindgen_parameters.
Best,
Gary
>
> Signed-off-by: Alice Ryhl <aliceryhl@xxxxxxxxxx>
> ---
> Alice Ryhl (4):
> rust: ffi: reexport Zeroable and related items
> rust: cpufreq: import pin_init::zeroed() from ffi
> rust: i2c: import pin_init::zeroed() from ffi
> rust: acpi: import pin_init::zeroed() from ffi
>
> rust/Makefile | 9 ++++++---
> rust/ffi.rs | 7 +++++++
> rust/kernel/acpi.rs | 2 +-
> rust/kernel/cpufreq.rs | 2 +-
> rust/kernel/i2c.rs | 4 ++--
> 5 files changed, 17 insertions(+), 7 deletions(-)
> ---
> base-commit: 8f0b4cce4481fb22653697cced8d0d04027cb1e8
> change-id: 20251202-zeroable-ffi-2beb542376c3
>
> Best regards,