Re: [PATCH v3 0/3] rust: time: Introduce typed clock sources and generalize Instant

From: Boqun Feng
Date: Sun Jun 08 2025 - 22:56:00 EST


On Mon, Jun 09, 2025 at 10:04:10AM +0900, FUJITA Tomonori wrote:
> This patch series introduces a type-safe abstraction over clock
> sources. The goal is to remove the need for runtime clock selection
> (via ClockId) and instead leverage Rust's type system to statically
> associate the Instant type with a specific clock.
>
> This approach enables compile-time enforcement of clock correctness
> across the APIs of Instant type.
>

Reviewed-by: Boqun Feng <boqun.feng@xxxxxxxxx>

Thanks a lot!

Regards,
Boqun

> v3:
> - rebased on 6.16-rc1
> v2: https://lore.kernel.org/rust-for-linux/20250504042436.237756-1-fujita.tomonori@xxxxxxxxx/
> - removed most of changes to hrtimer code
> v1: https://lore.kernel.org/rust-for-linux/20250413105629.162349-1-fujita.tomonori@xxxxxxxxx/
>
> FUJITA Tomonori (3):
> rust: time: Replace ClockId enum with ClockSource trait
> rust: time: Make Instant generic over ClockSource
> rust: time: Add ktime_get() to ClockSource trait
>
> rust/helpers/helpers.c | 1 +
> rust/helpers/time.c | 18 ++++
> rust/kernel/time.rs | 201 ++++++++++++++++++++++--------------
> rust/kernel/time/hrtimer.rs | 6 +-
> 4 files changed, 148 insertions(+), 78 deletions(-)
> create mode 100644 rust/helpers/time.c
>
>
> base-commit: 19272b37aa4f83ca52bdf9c16d5d81bdd1354494
> --
> 2.43.0
>