Re: nonboot cpu on SMP suspend

From: Pavel Machek
Date: Mon Mar 23 2009 - 06:35:45 EST


On Mon 2009-03-23 15:15:57, Li Yang wrote:
> On Sat, Mar 21, 2009 at 2:58 AM, Pavel Machek <pavel@xxxxxx> wrote:
> > On Wed 2009-03-18 14:25:32, Li Yang wrote:
> >> Hi all,
> >>
> >> I'm curious why we need to un-plug all the nonboot cpus before suspend
> >> and start them all over again after the suspend(ACPI sleep)?  I mean
> >> if we can bring the booting cpu back to the exact state as before
> >> suspend, why can't we just do the same for non-booting cpus?  And that
> >> will be much faster.  Any thought?  Thanks.
> >
> > Why do you think it will be faster?
>
> _cpu_down() and _cpu_up() are surely complex functions, involving
> work_queues and synchronization between boot cpu and non-boot cpu. On
> the contrary, to bring the cpu back to previous state is much simpler.
> For standby state, you barely need to do anything. For mem state,
> you only need to restore the registers and states of the CPU.

Feel free to cook up a patch.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
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/