Messages in this thread | | | From | Lianwei Wang <> | Date | Mon, 23 Nov 2015 09:42:06 -0800 | Subject | Re: [PATCH] sched: idle: move need_resched check after function rcu_idle_enter |
| |
Issue was found on ARM/Qcom platform, but I think it is applicable to other platforms as well. I add a BUG_ON after rcu_enter_idle to catch it. The Qcom's cpuidle driver is not in mainline kernel yet.
On Mon, Nov 23, 2015 at 5:05 AM, Peter Zijlstra <peterz@infradead.org> wrote: > On Sat, Nov 21, 2015 at 01:02:02AM -0800, Lianwei Wang wrote: >> The rcu_idle_endter may call wakeup_softirqd to set the need resched >> flag on idle process. But if we don't check it after that, then the >> cpu will enter idle state with RESCHED flag set and can not be woken >> up by wakeup/resched call anymore. > > Fair enough; but which cpuidle driver did you observe that with? All the > ones I checked test for need_resched again after this.
| |