lkml.org 
[lkml]   [2012]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH V2] MIPS: Fix poweroff failure when HOTPLUG_CPU configured.
    On Mon, Aug 13, 2012 at 08:52:24PM +0800, Huacai Chen wrote:

    > When poweroff machine, kernel_power_off() call disable_nonboot_cpus().
    > And if we have HOTPLUG_CPU configured, disable_nonboot_cpus() is not an
    > empty function but attempt to actually disable the nonboot cpus. Since
    > system state is SYSTEM_POWER_OFF, play_dead() won't be called and thus
    > disable_nonboot_cpus() hangs. Therefore, we make this patch to avoid
    > poweroff failure.

    > diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c
    > index e9a5fd7..69b17a9 100644
    > --- a/arch/mips/kernel/process.c
    > +++ b/arch/mips/kernel/process.c
    > @@ -72,9 +72,7 @@ void __noreturn cpu_idle(void)
    > }
    > }
    > #ifdef CONFIG_HOTPLUG_CPU
    > - if (!cpu_online(cpu) && !cpu_isset(cpu, cpu_callin_map) &&
    > - (system_state == SYSTEM_RUNNING ||
    > - system_state == SYSTEM_BOOTING))
    > + if (!cpu_online(cpu) && !cpu_isset(cpu, cpu_callin_map))

    Looks good - but I'm wondering if the "!cpu_isset(cpu, cpu_callin_map)"
    can be removed as well?

    Also, which -stable branches is this patch applicable?

    Ralf


    \
     
     \ /
      Last update: 2012-08-14 14:23    [W:5.548 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site