[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200711210100.36884.rjw@sisk.pl>
Date: Wed, 21 Nov 2007 01:00:35 +0100
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: Alan Stern <stern@...land.harvard.edu>,
"Huang, Ying" <ying.huang@...el.com>
Cc: nigel@...el.suspend2.net,
Kexec Mailing List <kexec@...ts.infradead.org>,
linux-kernel@...r.kernel.org,
"Eric W. Biederman" <ebiederm@...ssion.com>,
Andrew Morton <akpm@...ux-foundation.org>,
linux-pm@...ts.linux-foundation.org,
Jeremy Maitin-Shepard <jbms@....edu>
Subject: Re: [linux-pm] Re: [PATCH 3/3 -mm] kexec based hibernation -v6: kexec hibernate/resume
On Tuesday, 20 of November 2007, Alan Stern wrote:
> On Tue, 20 Nov 2007, Huang, Ying wrote:
>
> > - What is the difference between PMSG_SUSPEND and PMSG_FREEZE?
>
> SUSPEND means that the system is about to go into a low-power state, so
> the driver should take the appropriate action to reduce the device's
> power consumption. It should also stop all I/O and DMA to the device.
> Interrupts can remain enabled if the device is supposed to be a wakeup
> source; otherwise they should be disabled.
>
> FREEZE means that the system is going to hibernate, and devices need to
> be quiescent (no I/O, no DMA, and no interrupts) so that an atomic
> memory snapshot can be captured. The driver should take the
> appropriate action to quiesce the device but the power level doesn't
> need to change.
>
> PRETHAW means that the system is going to resume from hibernation by
> loading a previously-saved memory snapshot. The driver should take the
> appropriate action to quiesce the device (no I/O, no DMA, and no
> interrupts) so that the snapshot can be safely restored, but the power
> level doesn't need to change. The driver may also want to put the
> device into a special state so that the saved kernel's resume method
> will recognize the device has undergone a hibernation cycle and needs
> to be reinitialized.
Exactly.
For this reason, PMSG_SUSPEND should be used right before calling
hibernation_ops->enter() .
Greetings,
Rafael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists