Re: [PATCH v4 0/7] rust: use Delta instead of raw jiffies for timeouts and delays

"Gary Guo" <[email protected]>
Newsgroups org.kernel.vger.rust-for-linux
Message-ID <[email protected]>
On Wed Jul 22, 2026 at 10:49 PM BST, FUJITA Tomonori wrote:
> From: FUJITA Tomonori <[email protected]>
>
> CondVar::wait_interruptible_timeout() and Queue::enqueue_delayed() use
> a raw jiffies count (a plain c_ulong alias with no type
> safety). Callers have to know on their own that the value meant
> jiffies and convert to/from it themselves, which is easy to get wrong
> (e.g. passing a millisecond value where a jiffies value is expected).
>
> Both APIs just take a span of time so, they can use the Delta type
> instead.
>
> This series makes Delta generic over its time unit with Nsec and Jiffy
> types, switches CondVar and Queue to use Delta instead of raw jiffies
> (updating binder's ioctl_freeze(), the only caller of
> wait_interruptible_timeout()), and then removes the now-unused Jiffies
> and Msecs type aliases.
>
> ---
> v4:
> - Make Delta generic over its time unit with Nsec and Jiffy types
> v3: https://lore.kernel.org/rust-for-linux/[email protected]/
> - Add new Jiffies type and convert the APIs to take impl Into<Jiffies>
> v2: https://lore.kernel.org/rust-for-linux/[email protected]/
> - Fix potential overflow in from_jiffies()
> - Fix inflating bug in as_jiffies_ceil()
> - Add a patch to convert enqueue_delayed()
> - Add a patch to remove Jiffies/Msecs aliases
> v1: https://lore.kernel.org/rust-for-linux/[email protected]/
>
> ---
> FUJITA Tomonori (7):
>   rust: time: make Delta generic over its time unit
>   rust: time: add jiffies time unit for Delta
>   rust: time: add Delta::as_millis_ceil()
>   rust: time: add Delta::to_jiffies() for timeout conversion
>   rust: workqueue: take a Delta<Jiffy> for the enqueue delay
>   rust: sync: condvar: use Delta<Jiffy> for timeout and result
>   rust: time: remove unused Jiffies/Msecs helpers

Looks good to me apart from a small nit, which doesn't need to be changed
unless you're sending a new version for other reason.

Reviewed-by: Gary Guo <[email protected]>

>
>  drivers/android/binder/process.rs |   6 +-
>  rust/kernel/sync/condvar.rs       |  29 ++++--
>  rust/kernel/time.rs               | 156 ++++++++++++++++++++++--------
>  rust/kernel/workqueue.rs          |  12 ++-
>  4 files changed, 150 insertions(+), 53 deletions(-)
>
>
> base-commit: 7059bdf4f04a3e14f4fafb3ac35fdca913e3e21a
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.