Re: [PATCH 2/5] rcu/nocb: Perform deferred wake up before last idle's need_resched() check

2021-02-08 Thread Frederic Weisbecker
On Mon, Feb 08, 2021 at 03:45:50PM +0100, Peter Zijlstra wrote: > On Mon, Feb 01, 2021 at 12:05:45AM +0100, Frederic Weisbecker wrote: > > > diff --git a/kernel/sched/idle.c b/kernel/sched/idle.c > > index 305727ea0677..b601a3aa2152 100644 > > --- a/kernel/sched/idle.c > > +++ b/kernel/sched/idle.

Re: [PATCH 2/5] rcu/nocb: Perform deferred wake up before last idle's need_resched() check

2021-02-08 Thread Peter Zijlstra
On Mon, Feb 01, 2021 at 12:05:45AM +0100, Frederic Weisbecker wrote: > diff --git a/kernel/sched/idle.c b/kernel/sched/idle.c > index 305727ea0677..b601a3aa2152 100644 > --- a/kernel/sched/idle.c > +++ b/kernel/sched/idle.c > @@ -55,6 +55,7 @@ __setup("hlt", cpu_idle_nopoll_setup); > static noinl

[PATCH 2/5] rcu/nocb: Perform deferred wake up before last idle's need_resched() check

2021-01-31 Thread Frederic Weisbecker
Entering RCU idle mode may cause a deferred wake up of an RCU NOCB_GP kthread (rcuog) to be serviced. Usually a local wake up happening while running the idle task is handled in one of the need_resched() checks carefully placed within the idle loop that can break to the scheduler. Unfortunately t