[PATCH v3 15/31] arm64: SMP support

Hanjun Guo hanjun.guo at linaro.org
Mon Aug 10 04:00:13 PDT 2015


Hi Timur,

On 08/06/2015 05:56 PM, Catalin Marinas wrote:
> On Wed, Aug 05, 2015 at 05:46:03PM -0700, Timur Tabi wrote:
>> Catalin,
>>
>> I know this patch is three years old, but I have a question about it:
>>
>> On Fri, Sep 7, 2012 at 9:26 AM, Catalin Marinas <catalin.marinas at arm.com> wrote:
>>> +static void ipi_cpu_stop(unsigned int cpu)
>>> +{
>>> +       if (system_state == SYSTEM_BOOTING ||
>>> +           system_state == SYSTEM_RUNNING) {
>>> +               raw_spin_lock(&stop_lock);
>>> +               pr_crit("CPU%u: stopping\n", cpu);
>>> +               dump_stack();
>>> +               raw_spin_unlock(&stop_lock);
>>> +       }
>>> +
>>> +       set_cpu_online(cpu, false);
>>> +
>>> +       local_fiq_disable();
>>> +       local_irq_disable();
>>> +
>>> +       while (1)
>>> +               cpu_relax();
>>> +}
>>
>> Why do you display a message and dump the stack when a CPU is stopped?
>>   I ask because emergency_restart() calls this function, and so
>> whenever I want to do an "emergency" reboot, it dumps the stack for
>> each core.  On an ARM64 system with lots of cores, this produces a ton
>> of output.  That makes emergency_restart() almost useless.
>
> This code was inherited from arch/arm which initially was always dumping
> the stack but it later gained the system_state check. Unless it's useful
> to anyone for debugging purposes, I'm ok with removing it.

Do you have patch for this one? My colleagues said that they met the
same problem :)

Thanks
Hanjun



More information about the linux-arm-kernel mailing list