Commit a126eca8 authored by Miguel Ojeda's avatar Miguel Ojeda
Browse files

rust: avoid unused import warning in `rusttest`



When compiling for the `rusttest` target, the `core::ptr` import is
unused since its only use happens in the `reserve()` method which is
not compiled in that target:

    warning: unused import: `core::ptr`
    --> rust/kernel/alloc/vec_ext.rs:7:5
      |
    7 | use core::ptr;
      |     ^^^^^^^^^
      |
      = note: `#[warn(unused_imports)]` on by default

Thus clean it.

Fixes: 97ab3e8e ("rust: alloc: fix dangling pointer in VecExt<T>::reserve()")
Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
Reviewed-by: default avatarDanilo Krummrich <dakr@redhat.com>
Link: https://lore.kernel.org/r/20240519210735.587323-1-ojeda@kernel.org


Signed-off-by: default avatarMiguel Ojeda <ojeda@kernel.org>
parent 83a7eefe
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -4,7 +4,6 @@

use super::{AllocError, Flags};
use alloc::vec::Vec;
use core::ptr;

/// Extensions to [`Vec`].
pub trait VecExt<T>: Sized {
@@ -141,7 +140,11 @@ fn reserve(&mut self, additional: usize, flags: Flags) -> Result<(), AllocError>
        // `krealloc_aligned`. A `Vec<T>`'s `ptr` value is not guaranteed to be NULL and might be
        // dangling after being created with `Vec::new`. Instead, we can rely on `Vec<T>`'s capacity
        // to be zero if no memory has been allocated yet.
        let ptr = if cap == 0 { ptr::null_mut() } else { old_ptr };
        let ptr = if cap == 0 {
            core::ptr::null_mut()
        } else {
            old_ptr
        };

        // SAFETY: `ptr` is valid because it's either NULL or comes from a previous call to
        // `krealloc_aligned`. We also verified that the type is not a ZST.