rust: block: refactor to use &raw mut

Replace all occurrences (one) of `addr_of_mut!(place)` with
`&raw mut place`.

This will allow us to reduce macro complexity, and improve consistency
with existing reference syntax as `&raw mut` is similar to `&mut` making
it fit more naturally with other existing code.

Suggested-by: Benno Lossin <benno.lossin@proton.me>
Link: https://github.com/Rust-for-Linux/linux/issues/1148
Signed-off-by: Antonio Hickey <contact@antoniohickey.com>
Acked-by: Andreas Hindborg <a.hindborg@kernel.org>
Reviewed-by: Benno Lossin <benno.lossin@proton.me>
Reviewed-by: Boqun Feng <boqun.feng@gmail.com>
Link: https://lore.kernel.org/r/20250320020740.1631171-17-contact@antoniohickey.com
[ Reworded slightly. - Miguel ]
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
This commit is contained in:
Antonio Hickey 2025-03-19 22:07:35 -04:00 committed by Miguel Ojeda
parent e1dfaa33fd
commit 2a571248df

View File

@ -12,7 +12,7 @@ use crate::{
};
use core::{
marker::PhantomData,
ptr::{addr_of_mut, NonNull},
ptr::NonNull,
sync::atomic::{AtomicU64, Ordering},
};
@ -187,7 +187,7 @@ impl RequestDataWrapper {
pub(crate) unsafe fn refcount_ptr(this: *mut Self) -> *mut AtomicU64 {
// SAFETY: Because of the safety requirements of this function, the
// field projection is safe.
unsafe { addr_of_mut!((*this).refcount) }
unsafe { &raw mut (*this).refcount }
}
}