summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorNicolás Antinori <nico.antinori.7@gmail.com>2026-07-02 17:58:00 -0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-07-17 15:24:02 +0200
commit5d577fa6feaf2ef02751fc4a89fc9a695aa0f6b2 (patch)
tree3512f0e46d9dbe7fd5a3498e0c605c55ff9782bd /drivers
parent4b17dfb3e22fdccf74839d2fc52362ddc257024e (diff)
downloadlinux-5d577fa6feaf2ef02751fc4a89fc9a695aa0f6b2.tar.gz
linux-5d577fa6feaf2ef02751fc4a89fc9a695aa0f6b2.zip
rust_binder: use pin_init::zeroed for file_operations initialization
All types in `bindings` implement `Zeroable` if they can. This enables using `pin_init::zeroed()` for `file_operations` initialization instead of relying on `unsafe { core::mem::MaybeUninit::zeroed().assume_init() }`. This change improves readability and removes an unnecessary unsafe block. Link: https://github.com/Rust-for-Linux/linux/issues/1189 Suggested-by: Benno Lossin <lossin@kernel.org> Signed-off-by: Nicolás Antinori <nico.antinori.7@gmail.com> Link: https://patch.msgid.link/20260702205803.552476-1-nico.antinori.7@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/android/binder/rust_binder_main.rs5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/android/binder/rust_binder_main.rs b/drivers/android/binder/rust_binder_main.rs
index 9e6cda960722..e6805bc06f43 100644
--- a/drivers/android/binder/rust_binder_main.rs
+++ b/drivers/android/binder/rust_binder_main.rs
@@ -324,9 +324,6 @@ unsafe impl<T> Sync for AssertSync<T> {}
#[no_mangle]
#[used]
pub static rust_binder_fops: AssertSync<kernel::bindings::file_operations> = {
- // SAFETY: All zeroes is safe for the `file_operations` type.
- let zeroed_ops = unsafe { core::mem::MaybeUninit::zeroed().assume_init() };
-
let ops = kernel::bindings::file_operations {
owner: THIS_MODULE.as_ptr(),
poll: Some(rust_binder_poll),
@@ -336,7 +333,7 @@ pub static rust_binder_fops: AssertSync<kernel::bindings::file_operations> = {
open: Some(rust_binder_open),
release: Some(rust_binder_release),
flush: Some(rust_binder_flush),
- ..zeroed_ops
+ ..pin_init::zeroed()
};
AssertSync(ops)
};