Re: sched_ext/lavd hard lockup in old call_rcu_tasks_generic needadjust path
From: Matt Fleming
Date: Thu Jun 18 2026 - 02:56:41 EST
On Tue, Jun 16, 2026 at 08:24:55PM -0700, Paul E. McKenney wrote:
> On Tue, Jun 16, 2026 at 11:56:19AM +0100, Matt Fleming wrote:
> >
> > What about something like this?
>
> Not bad, actually.
>
> But we are going to have to similarly bypass call_rcu_tasks_generic()
> soon enough, though only when interrupts are disabled at the time
> of the call. One complication is that it would need to interact
> with rcu_barrier_tasks_generic(), which would need to remove any
> pending callbacks from bypassed call_rcu_tasks_generic() invocations,
> as in llist_del_all() and enqueue the callbacks. A well-placed
> raw_spin_trylock_rcu_node(rtpcp) should suffice for the serialization.
> The trick is that rcu_barrier_tasks_generic() is not obligated to
> wait on later calls to call_rcu_tasks_generic().
>
> Is this something that you would be interested in digging into?
Sure, I'll take a look.
Thanks,
Matt