[linux-pm] [RFC][PATCH -mm] PM: Change ordering of suspend and resume code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!

> The discussion in a recent thread on Linux-PM has indicated that it's
> necessary to call pm_ops->finish() before devce_resume(),
> but enable_nonboot_cpus() has to be called before pm_ops->finish()
> (cf. http://lists.osdl.org/pipermail/linux-pm/2006-November/004164.html).
> For consistency, it seems reasonable to call disable_nonboot_cpus() after
> device_suspend().
> 
> This way the suspend code will remain symmetrical with respect to the resume
> code and it may allow us to speed up things in the future by suspending and
> resuming devices and/or saving the suspend image in many threads, but for this
> purpose we first need to make freeze_processes() SMP-safe.

I do not think first patch is enough to make it SMP-safe, sorry.

> The following series of patches makes freeze_processes() SMP-safe and
> reorders the suspend and resume code so that nonboot CPUs are disabled
> after devices have been suspended and enabled before the devices are
> resumed.  It also causes pm_ops->finish() to be called after
> enable_nonboot_cpus() wherever necessary.
> 
> The first four patches have been tested on two different x86-64 SMP boxes and
> they don't seem to break anything.  Still, if anyone can test them on some other
> SMP boxes (especially on i386 ones), please do so and tell me if there are
> any problems.
> 
> The last patch is untested.

I guess I should fix s2ram enough that it works for you... What is the
primary notebook you are using?
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux