From: Ingo Molnar <mingo@kernel.org>
To: linux-kernel@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>,
Frederic Weisbecker <frederic@kernel.org>,
"H . Peter Anvin" <hpa@zytor.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@kernel.org>, Miguel Ojeda <ojeda@kernel.org>,
Alex Gaynor <alex.gaynor@gmail.com>,
Andreas Hindborg <a.hindborg@kernel.org>,
Anna-Maria Behnsen <anna-maria@linutronix.de>,
Boqun Feng <boqun.feng@gmail.com>, Lyude Paul <lyude@redhat.com>,
Rust ML <rust-for-linux@vger.kernel.org>
Subject: [PATCH 01/10] rust: Rename timer_container_of() to hrtimer_container_of()
Date: Wed, 7 May 2025 19:53:29 +0200 [thread overview]
Message-ID: <20250507175338.672442-2-mingo@kernel.org> (raw)
In-Reply-To: <20250507175338.672442-1-mingo@kernel.org>
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>
Acked-by: Miguel Ojeda <ojeda@kernel.org>
Tested-by: Miguel Ojeda <ojeda@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>
Cc: Rust ML <rust-for-linux@vger.kernel.org>
---
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
next prev parent reply other threads:[~2025-05-07 17:53 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-07 17:53 [PATCH -v2 00/10] timers: Simple cleanup of the timer API namespace Ingo Molnar
2025-05-07 17:53 ` Ingo Molnar [this message]
2025-05-07 18:04 ` [PATCH 01/10] rust: Rename timer_container_of() to hrtimer_container_of() Andreas Hindborg
2025-05-07 19:38 ` Ingo Molnar
2025-05-12 9:29 ` Andreas Hindborg
2025-05-12 10:33 ` Andreas Hindborg
2025-05-15 17:23 ` [PATCH -v2 " Ingo Molnar
2025-05-07 17:53 ` [PATCH 02/10] timers: Rename init_timer_key() => timer_init_key() Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] timers: Rename init_timer_key() as timer_init_key() tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 03/10] timers: Rename init_timer_on_stack_key() => timer_init_key_on_stack() Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] timers: Rename init_timer_on_stack_key() as timer_init_key_on_stack() tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 04/10] timers: Rename __init_timer() => __timer_init() Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] timers: Rename __init_timer() as __timer_init() tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 05/10] timers: Rename __init_timer_on_stack() => __timer_init_on_stack() Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] timers: Rename __init_timer_on_stack() as __timer_init_on_stack() tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 06/10] timers: Rename NEXT_TIMER_MAX_DELTA => TIMER_NEXT_MAX_DELTA Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] timers: Rename NEXT_TIMER_MAX_DELTA as TIMER_NEXT_MAX_DELTA tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 07/10] timers: Rename init_timers() => timers_init() Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] timers: Rename init_timers() as timers_init() tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 08/10] treewide, timers: Rename try_to_del_timer_sync() => timer_delete_sync_try() Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] treewide, timers: Rename try_to_del_timer_sync() as timer_delete_sync_try() tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 09/10] treewide, timers: Rename destroy_timer_on_stack() => timer_destroy_on_stack() Ingo Molnar
2025-05-08 17:54 ` [tip: timers/cleanups] treewide, timers: Rename destroy_timer_on_stack() as timer_destroy_on_stack() tip-bot2 for Ingo Molnar
2025-05-07 17:53 ` [PATCH 10/10] treewide, timers: Rename from_timer() => timer_container_of() Ingo Molnar
2025-05-09 5:51 ` [PATCH -v2 " Ingo Molnar
2025-06-08 7:13 ` [tip: timers/cleanups] treewide, timers: Rename from_timer() to timer_container_of() tip-bot2 for Ingo Molnar
-- strict thread matches above, loose matches on Subject: below --
2025-04-16 9:05 [PATCH -v2 00/10] timers: Simple cleanup of the timer API namespace Ingo Molnar
2025-04-16 9:05 ` [PATCH 01/10] rust: Rename timer_container_of() to hrtimer_container_of() Ingo Molnar
2025-04-16 13:29 ` Miguel Ojeda
2025-04-18 7:13 ` Ingo Molnar
2025-04-22 12:08 ` Andreas Hindborg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250507175338.672442-2-mingo@kernel.org \
--to=mingo@kernel.org \
--cc=a.hindborg@kernel.org \
--cc=alex.gaynor@gmail.com \
--cc=anna-maria@linutronix.de \
--cc=boqun.feng@gmail.com \
--cc=frederic@kernel.org \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lyude@redhat.com \
--cc=ojeda@kernel.org \
--cc=peterz@infradead.org \
--cc=rust-for-linux@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.