Do not loop on !ci->ci_want_resched in cpu_idle(), the caller already does the loop (with the right checks) for us. Keep a test on !ci->ci_want_resched, like x86.