Re: [PATCH v11 6/8] MAINTAINERS: rust: Add new sections for DELAY/SLEEP and TIMEKEEPING API

From: Boqun Feng
Date: Wed Apr 02 2025 - 12:35:00 EST


On Wed, Apr 02, 2025 at 11:16:27PM +0900, FUJITA Tomonori wrote:
> On Mon, 31 Mar 2025 07:03:15 -0700
> Boqun Feng <boqun.feng@xxxxxxxxx> wrote:
>
> >> My recommendation would be to take all of `rust/kernel/time` under one
> >> entry for now. I suggest the following, folding in the hrtimer entry as
> >> well:
> >>
> >> DELAY, SLEEP, TIMEKEEPING, TIMERS [RUST]
> >> M: Andreas Hindborg <a.hindborg@xxxxxxxxxx>
> >
> > Given you're the one who would handle the patches, I think this make
> > more sense.
> >
> >> R: Boqun Feng <boqun.feng@xxxxxxxxx>
> >> R: FUJITA Tomonori <fujita.tomonori@xxxxxxxxx>
> >
> > Tomo, does this look good to you?
>
> Fine by me.
>
> So a single entry for all the Rust time stuff, which isn't aligned
> with C's MAINTAINERS entries. It's just for now?
>

Given Andreas is the one who's going to handle the PRs, and he will put
all the things in one branch. I think it's fine even for long term, and
we got all relevant reviewers covered. If the Rust timekeeping + hrtimer
community expands in the future, we can also add more entries. We don't
necessarily need to copy all maintainer structures from C ;-)

>
> >> R: Lyude Paul <lyude@xxxxxxxxxx>
> >> R: Frederic Weisbecker <frederic@xxxxxxxxxx>
> >> R: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> >> R: Anna-Maria Behnsen <anna-maria@xxxxxxxxxxxxx>
> >> R: John Stultz <jstultz@xxxxxxxxxx>
> >
> > We should add:
> >
> > R: Stephen Boyd <sboyd@xxxxxxxxxx>
> >
> > If Stephen is not against it.
> >
> >> L: rust-for-linux@xxxxxxxxxxxxxxx
> >> S: Supported
> >> W: https://rust-for-linux.com
> >> B: https://github.com/Rust-for-Linux/linux/issues
> >> T: git https://github.com/Rust-for-Linux/linux.git rust-timekeeping-next
> >> F: rust/kernel/time.rs
> >> F: rust/kernel/time/
> >>
> >> If that is acceptable to everyone, it is very likely that I can pick 2-6
> >> for v6.16.
> >>
> >
> > You will need to fix something because patch 2-6 removes `Ktime` ;-)
>
> I'll take care of it in the next version.
>

Thanks!

> >> I assume patch 1 will go through the sched/core tree, and then Miguel
> >> can pick 7.
> >>
> >
> > Patch 1 & 7 probably should go together, but we can decide it later.
>
> Since nothing has moved forward for quite a while, maybe it's time to
> drop patch 1.

No, I think we should keep it. Because otherwise we will use a macro
version of read_poll_timeout(), which is strictly worse. I'm happy to
collect patch #1 and the cpu_relax() patch of patch #7, and send an PR
to tip. Could you split them a bit:

* Move the Rust might_sleep() in patch #7 to patch #1 and put it at
kernel::task, also if we EXPORT_SYMBOL(__might_sleep_precision), we
don't need the rust_helper for it.

* Have a separate containing the cpu_relax() bit.

* Also you may want to put #[inline] at cpu_relax() and might_resched().

and we can start from there. Sounds good?

Regards,
Boqun