Re: [PATCH] sched: idle: move need_resched check after function rcu_idle_enter

From: Lianwei Wang
Date: Mon Nov 23 2015 - 15:03:25 EST


On Mon, Nov 23, 2015 at 9:57 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> On Mon, Nov 23, 2015 at 09:42:06AM -0800, Lianwei Wang wrote:
>> 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.
>
>
> A: Because it messes up the order in which people normally read text.
> Q: Why is top-posting such a bad thing?
> A: Top-posting.
> Q: What is the most annoying thing in e-mail?
>
>
> And I suspect that your qualcom thing doesn't have TIF_POLLING_NRFLAG
> either, which would introduce another need_resched() test after the
> rcu_enter_idle() call.

Sorry for the top posting and thank you for pointing it out.

I check the idle code again and realize that both the
default_idle_call and call_cpuidle will test TIF_NEED_RESCHED flag
again after rcu_enter_idle call by calling
current_clr_polling_and_test. So no issue on mainline kernel now.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/