Re: [patch 30/34] tile: Enter idle with preemption disabled

Srivatsa S. Bhat
2013-03-28T15:45:45Z

On 03/22/2013 03:23 AM, Thomas Gleixner wrote:
> cpu_idle() needs to be called with preemption disabled.
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> Cc: Chris Metcalf <cmetcalf@tilera.com>
> ---
> arch/tile/kernel/smpboot.c | 2 --
> 1 file changed, 2 deletions(-)
>
> Index: linux-2.6/arch/tile/kernel/smpboot.c
> ===================================================================
> --- linux-2.6.orig/arch/tile/kernel/smpboot.c
> +++ linux-2.6/arch/tile/kernel/smpboot.c
> @@ -207,8 +207,6 @@ void __cpuinit online_secondary(void)
> /* Set up tile-timer clock-event device on this cpu */
> setup_tile_timer();
>
> - preempt_enable();
> -

Hmm, so shouldn't we call preempt_disabled() here?

I see that start_secondary() calls preempt_disabled(), but I didn't quite
understand as to which of the *_secondary() functions have to call
it... especially since its the online_secondary() function which calls
cpu_idle().

> cpu_idle();
> }
>
>
>

Regards,
Srivatsa S. Bhat