Re: Reworking suspend-resume sequence (was: Re: PCI PM: Restore standard config registers of all devices early)

Rafael J. Wysocki
2009-03-05T19:10:25Z

On Thursday 05 March 2009, Pavel Machek wrote:
> On Thu 2009-03-05 10:25:04, Benjamin Herrenschmidt wrote:
> >
> > > As long as we claim to support cpu hotplug, suspending the cpus early
> > > should work. User might have unplugged the cpu manually...
> > >
> > > If something is broken in acpi, we may need to disable cpu*/onlone on
> > > affected systems.
> >
> > You seem to miss some context here... it seems that ACPI mandates that
> > CPUs are suspended after devices and you know that we can't just start
> > blacklisting half of the machines out there just because we happen not
> > to do the same as what Windows does...
>
> I did not see that ACPI mandate... where is it?

15.1.6 in ACPI 3.0b (for example).

This is more complicated, though. Turning the CPUs on/off involves things
that need to be ordered with respect to _PTS, _WAK in a specific way (ie. just
like we do it right now, which is _PTS before disable_nonboot_cpus() and
enable_nonboot_cpus() before _WAK). Otherwise at least some machines will
break (verified experimentally some time ago).

Thanks,
Rafael