Messages in this thread | | | Date | Mon, 29 Jul 2013 16:53:27 +0200 | From | Daniel Lezcano <> | Subject | Re: [linux-pm] [PATCH 1/3] cpuidle/powernv: cpuidle backend driver for powernv |
| |
On 07/29/2013 04:39 PM, Deepthi Dharwar wrote: > Hi Daniel, > > On 07/27/2013 10:57 AM, Daniel Lezcano wrote: >> On 07/23/2013 11:01 AM, Deepthi Dharwar wrote: >>> This patch implements a back-end cpuidle driver for >>> powernv calling power7_nap and snooze idle states. >>> This can be extended by adding more idle states >>> in the future to the existing framework. >>> >>> Signed-off-by: Deepthi Dharwar <deepthi@linux.vnet.ibm.com>
[ ... ]
>>> +static int snooze_loop(struct cpuidle_device *dev, >>> + struct cpuidle_driver *drv, >>> + int index) >>> +{ >>> + int cpu = dev->cpu; >>> + >>> + local_irq_enable(); >>> + set_thread_flag(TIF_POLLING_NRFLAG); >>> + >>> + while ((!need_resched()) && cpu_online(cpu)) { >>> + ppc64_runlatch_off(); >>> + HMT_very_low(); >>> + } >> >> Why are you using the cpu_online test here ? > > Snooze state is an idle state where cpu executes an infinite loop by > reducing the priority of the thread and the idle cpu can come out of it > only if need_resched is set or in case the cpu is offlined. In order to > continue executing this loop to remain in this idle state, we need the > check just to be safe.
Yes, but if the cpu is offline you are no longer executing this code, no ?
-- <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook | <http://twitter.com/#!/linaroorg> Twitter | <http://www.linaro.org/linaro-blog/> Blog
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |