On 07/29/2013 08:23 PM, Daniel Lezcano wrote: > 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@xxxxxxxxxxxxxxxxxx> > > [ ... ] > >>>> +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 ? > Yes, not needed. Thanks ! Deepthi