Re: [PATCH v4 0/7] x86: BSP or CPU0 online/offline

From: Srivatsa S. Bhat
Date: Tue Dec 06 2011 - 09:15:57 EST


On 12/06/2011 02:12 PM, Ingo Molnar wrote:

>
> * Fenghua Yu <fenghua.yu@xxxxxxxxx> wrote:
>
>> From: Fenghua Yu <fenghua.yu@xxxxxxxxx>
>>
>> BSP or CPU0 has been the last obstacle to CPU hotplug on x86.
>> This patch set implements BSP online and offline and removes
>> this obstacle to CPU hotplug.

[snip]
>

> Also, could you please enumerate all limitations that could
> possibly happen? The documentation has this list right now:
>
> +1. Resume from hibernate/suspend depends on BSP. Hibernate/suspend will fail if
> +BSP is offline and you need to online BSP before hibernate/suspend can continue.
>
> This needs to be fixed on some other fashion than warning people
> in documentation that it would break.
>


Actually, this patchset does more than just warn people. It has
checks to see if the CPU0 is offline, and if so, it fails the
suspend/hibernate attempt. See patch 7/7
(x86/power/cpu.c: Don't hibernate/suspend if CPU0 is offline)

> Firstly, at minimum a suspend/hibernate attempt should fail in
> some deterministic fashion.


It does, as mentioned above. In fact, this patchset does it
proactively: whether the hardware/firmware supports suspend/resume
with BSP offlined or not, it just prevents anybody from doing
suspend/hibernate when the boot CPU is offline.

I am not saying that this is the *right* way to do it; I am just
pointing out that this patchset _does_ handle it.

>
> Secondly, and more importantly, is there *any* hardware in
> existence that has a BIOS that can suspend/resume successfully
> with BSP offlined? If such hardware exists then we need to
> support it properly - initially perhaps by whitelisting such
> systems.
>
> Then if demand for this picks up some more intelligent method of
> cooperating with the firmware could be added: the firmware could
> actually signal to us whether it supports suspend/resume from
> other than the boot CPU.
>


Regards,
Srivatsa S. Bhat

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/