]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
rust: block: mq: use pin_init::zeroed() for tag_set
authorKe Sun <sunke@kylinos.cn>
Tue, 20 Jan 2026 08:38:19 +0000 (16:38 +0800)
committerJens Axboe <axboe@kernel.dk>
Wed, 21 Jan 2026 14:37:15 +0000 (07:37 -0700)
Replace unsafe core::mem::zeroed() with pin_init::zeroed() for
blk_mq_tag_set initialization.

Signed-off-by: Ke Sun <sunke@kylinos.cn>
Acked-by: Andreas Hindborg <a.hindborg@kernel.org>
Reviewed-by: Gary Guo <gary@garyguo.net>
Link: https://lore.kernel.org/r/20260120083824.477339-4-sunke@kylinos.cn
Signed-off-by: Jens Axboe <axboe@kernel.dk>
rust/kernel/block/mq/tag_set.rs

index c3cf56d52beec970e0ba16bdf050d9cc513085cb..dae9df408a8625ef5e1900d5f0d190ae35401458 100644 (file)
@@ -38,9 +38,7 @@ impl<T: Operations> TagSet<T> {
         num_tags: u32,
         num_maps: u32,
     ) -> impl PinInit<Self, error::Error> {
-        // SAFETY: `blk_mq_tag_set` only contains integers and pointers, which
-        // all are allowed to be 0.
-        let tag_set: bindings::blk_mq_tag_set = unsafe { core::mem::zeroed() };
+        let tag_set: bindings::blk_mq_tag_set = pin_init::zeroed();
         let tag_set: Result<_> = core::mem::size_of::<RequestDataWrapper>()
             .try_into()
             .map(|cmd_size| {