On Tue, Apr 08, 2025 at 06:05:19PM -0400, Joel Fernandes wrote:
> 
> 
> On 4/8/2025 4:58 PM, Paul E. McKenney wrote:
> > On Tue, Apr 08, 2025 at 08:18:05PM -0000, Joel Fernandes wrote:
> >> Hello, Paul,
> >>
> >> On Tue, 8 Apr 2025 20:16:08 GMT, "Paul E. McKenney" wrote:
> >>> This commit adds a new rcutorture.n_up_down kernel boot parameter
> >>> that specifies the number of outstanding SRCU up/down readers, which
> >>> begin in kthread context and end in an hrtimer handler.  There is a new
> >>> kthread ("rcu_torture_updown") that scans an per-reader array looking
> >>> for elements whose readers have ended.  This kthread sleeps between one
> >>> and two milliseconds between consecutive scans.
> >>>
> >>> [ paulmck: Apply kernel test robot feedback. ]
> >>> [ paulmck: Apply Z qiang feedback. ]
> >>>
> >> [...]
> >>> + for (i = 0; i < n_up_down; i++) {
> >>> +         init_rcu_torture_one_read_state(&updownreaders[i].rtorsu_rtors, 
> >>> rand);
> >>> +         hrtimer_init(&updownreaders[i].rtorsu_hrt, CLOCK_MONOTONIC,
> >>> +                      HRTIMER_MODE_REL | HRTIMER_MODE_SOFT);
> >>
> >> This will now fail to build and needs the following: I will squash it into 
> >> my
> >> for-next branch into this patch, but let me know if you prefer to provide 
> >> an
> >> update.
> > 
> > Please feel free to squash it in with your "[]" tag like shown above.
> 
> Yep done already. :-)
> 
> > 
> > As you say, you will be sending them all out soon enough anyway.  ;-)
> 
> True. ;-)
> 
> > 
> > My plan is to rebase on your stack once you finish your first long-form
> > round of testing.
> 
> Perfect, my first long-form test should be done by tomorrow AM.

Very good, I have fired off overnight tests on v6.15-rc1.  Perhaps a
bit more than overnight in one case.  ;-)

                                                        Thanx, Paul

> >>     Fix build error by converting hrtimer_init to hrtimer_setup, see:
> >>     
> >> https://lore.kernel.org/all/174384280127.31282.2714486346304643188.tip-bot2@tip-bot2/
> >>
> >> diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
> >> index 4f0a00a8bdee..14a22ef3b56f 100644
> >> --- a/kernel/rcu/rcutorture.c
> >> +++ b/kernel/rcu/rcutorture.c
> >> @@ -2480,9 +2480,8 @@ static int rcu_torture_updown_init(void)
> >>         }
> >>         for (i = 0; i < n_up_down; i++) {
> >>                 
> >> init_rcu_torture_one_read_state(&updownreaders[i].rtorsu_rtors, rand);
> >> -               hrtimer_init(&updownreaders[i].rtorsu_hrt, CLOCK_MONOTONIC,
> >> -                            HRTIMER_MODE_REL | HRTIMER_MODE_SOFT);
> >> -               updownreaders[i].rtorsu_hrt.function = 
> >> rcu_torture_updown_hrt;
> >> +               hrtimer_setup(&updownreaders[i].rtorsu_hrt,
> >> rcu_torture_updown_hrt, CLOCK_MONOTONIC,
> >> +                             HRTIMER_MODE_REL | HRTIMER_MODE_SOFT);
> >>                 torture_random_init(&updownreaders[i].rtorsu_trs);
> >>                 
> >> init_rcu_torture_one_read_state(&updownreaders[i].rtorsu_rtors,
> >>                                                 
> >> &updownreaders[i].rtorsu_trs);
> >>
> >> Thanks.
> 

Reply via email to