[PATCH 01/17] rust: Rename timer_container_of() to hrtimer_container_of()

Ingo Molnar
2025-04-14T10:23:10Z

This primitive is dealing with 'struct hrtimer' objects, not
'struct timer_list' objects - so clarify the name.

We want to introduce the timer_container_of() symbol in the kernel
for timer_list, make sure there's no clash of namespaces, at least
on the conceptual plane.

Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Alex Gaynor <alex.gaynor@gmail.com>
Cc: Andreas Hindborg <a.hindborg@kernel.org>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Boqun Feng <boqun.feng@gmail.com>
Cc: Frederic Weisbecker <frederic@kernel.org>
Cc: Lyude Paul <lyude@redhat.com>
Cc: Miguel Ojeda <ojeda@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
---
rust/kernel/time/hrtimer.rs | 4 ++--
rust/kernel/time/hrtimer/arc.rs | 2 +-
rust/kernel/time/hrtimer/pin.rs | 2 +-
rust/kernel/time/hrtimer/pin_mut.rs | 2 +-
rust/kernel/time/hrtimer/tbox.rs | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/rust/kernel/time/hrtimer.rs b/rust/kernel/time/hrtimer.rs
index ce53f8579d18..f3fb7a0caf2f 100644
--- a/rust/kernel/time/hrtimer.rs
+++ b/rust/kernel/time/hrtimer.rs
@@ -338,7 +338,7 @@ pub unsafe trait HasHrTimer<T> {
/// # Safety
///
/// `ptr` must point to a [`HrTimer<T>`] field in a struct of type `Self`.
- unsafe fn timer_container_of(ptr: *mut HrTimer<T>) -> *mut Self
+ unsafe fn hrtimer_container_of(ptr: *mut HrTimer<T>) -> *mut Self
where
Self: Sized;

@@ -498,7 +498,7 @@ unsafe fn raw_get_timer(
}

#[inline]
- unsafe fn timer_container_of(
+ unsafe fn hrtimer_container_of(
ptr: *mut $crate::time::hrtimer::HrTimer<$timer_type>,
) -> *mut Self {
// SAFETY: As per the safety requirement of this function, `ptr`
diff --git a/rust/kernel/time/hrtimer/arc.rs b/rust/kernel/time/hrtimer/arc.rs
index 4a984d85b4a1..5cfe6c27795f 100644
--- a/rust/kernel/time/hrtimer/arc.rs
+++ b/rust/kernel/time/hrtimer/arc.rs
@@ -80,7 +80,7 @@ impl<T> RawHrTimerCallback for Arc<T>

// SAFETY: By C API contract `ptr` is the pointer we passed when
// queuing the timer, so it is a `HrTimer<T>` embedded in a `T`.
- let data_ptr = unsafe { T::timer_container_of(timer_ptr) };
+ let data_ptr = unsafe { T::hrtimer_container_of(timer_ptr) };

// SAFETY:
// - `data_ptr` is derived form the pointer to the `T` that was used to
diff --git a/rust/kernel/time/hrtimer/pin.rs b/rust/kernel/time/hrtimer/pin.rs
index f760db265c7b..d16a676b0639 100644
--- a/rust/kernel/time/hrtimer/pin.rs
+++ b/rust/kernel/time/hrtimer/pin.rs
@@ -83,7 +83,7 @@ impl<'a, T> RawHrTimerCallback for Pin<&'a T>

// SAFETY: By the safety requirement of this function, `timer_ptr`
// points to a `HrTimer<T>` contained in an `T`.
- let receiver_ptr = unsafe { T::timer_container_of(timer_ptr) };
+ let receiver_ptr = unsafe { T::hrtimer_container_of(timer_ptr) };

// SAFETY:
// - By the safety requirement of this function, `timer_ptr`
diff --git a/rust/kernel/time/hrtimer/pin_mut.rs b/rust/kernel/time/hrtimer/pin_mut.rs
index 90c0351d62e4..17c68f8fbb37 100644
--- a/rust/kernel/time/hrtimer/pin_mut.rs
+++ b/rust/kernel/time/hrtimer/pin_mut.rs
@@ -87,7 +87,7 @@ impl<'a, T> RawHrTimerCallback for Pin<&'a mut T>

// SAFETY: By the safety requirement of this function, `timer_ptr`
// points to a `HrTimer<T>` contained in an `T`.
- let receiver_ptr = unsafe { T::timer_container_of(timer_ptr) };
+ let receiver_ptr = unsafe { T::hrtimer_container_of(timer_ptr) };

// SAFETY:
// - By the safety requirement of this function, `timer_ptr`
diff --git a/rust/kernel/time/hrtimer/tbox.rs b/rust/kernel/time/hrtimer/tbox.rs
index 2071cae07234..9dace895ce58 100644
--- a/rust/kernel/time/hrtimer/tbox.rs
+++ b/rust/kernel/time/hrtimer/tbox.rs
@@ -103,7 +103,7 @@ impl<T, A> RawHrTimerCallback for Pin<Box<T, A>>

// SAFETY: By C API contract `ptr` is the pointer we passed when
// queuing the timer, so it is a `HrTimer<T>` embedded in a `T`.
- let data_ptr = unsafe { T::timer_container_of(timer_ptr) };
+ let data_ptr = unsafe { T::hrtimer_container_of(timer_ptr) };

// SAFETY:
// - As per the safety requirements of the trait `HrTimerHandle`, the
--
2.45.2