public inbox for linux-pm@vger.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Jeremy Maitin-Shepard <jbms@cmu.edu>
Cc: Nigel Cunningham <nigel@nigel.suspend2.net>,
	nigel@suspend2.net,
	Kexec Mailing List <kexec@lists.infradead.org>,
	linux-kernel@vger.kernel.org,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	"Huang, Ying" <ying.huang@intel.com>,
	linux-pm@lists.linux-foundation.org,
	huang ying <huang.ying.caritas@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: Re: [RFC][PATCH 1/2 -mm] kexec based hibernation -v3: kexec jump
Date: Fri, 21 Sep 2007 21:00:09 +0200	[thread overview]
Message-ID: <200709212100.11050.rjw@sisk.pl> (raw)
In-Reply-To: <87sl576g8q.fsf@jbms.ath.cx>

On Friday, 21 September 2007 20:11, Jeremy Maitin-Shepard wrote:
> "Rafael J. Wysocki" <rjw@sisk.pl> writes:
> 
> > On Friday, 21 September 2007 15:14, huang ying wrote:
> >> On 9/21/07, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> >> > On Friday, 21 September 2007 05:33, Eric W. Biederman wrote:
> >> > > Nigel Cunningham <nigel@nigel.suspend2.net> writes:
> > [--snip--]
> >> > >
> >> > > No one has yet attacked the hard problem of coming up with separate
> >> > > hibernate methods for drivers.
> >> >
> >> > Well, I've been playing a bit with that for some time, but it's not easy by
> > any
> >> > means.
> >> >
> >> > In short, I'm seeing some problems related to the handling of ACPI that seem
> > to
> >> > shatter the entire idea of having separate hibernate methods, at least as
> > far
> >> > as ACPI systems are concerned.
> >> 
> >> So sadly to hear this. Can you details it a little? Or a link?
> 
> > Well, the problem is that apparently some systems (eg. my HP nx6325) expect us
> > to execute the _PTS ACPI global control method before creating the image _and_
> > to execute acpi_enter_sleep_state(ACPI_STATE_S4) in order to finally put the
> > system into the sleep state.  In particular, on nx6325, if we don't do that,
> > then after the restore the status of the AC power will not be reported
> > correctly (and if you replace the battery while in the sleep state, the
> > battery status will not be updated correctly after the restore).  Similar
> > issues have been reported for other machines.
> 
> Suppose that instead of using ACPI S4 state at all, you instead just
> power off.  Yes, you'll lose wakeup event functionality, and flashy
> LEDs, but doesn't this take care of the problem?

Nope.

> The firmware shouldn't see the hibernate as anything other than a shutdown
> and reboot.

Actually, this assumption is apparently wrong.

> ACPI should be initialized normally when resuming, which should take care of
> getting AC power status reported properly.

Well, that doesn't work.  I've tested it, really. :-)

> This should be the behavior, anyway, on the many systems that do not
> support S4.
> 
> > Now, the ACPI specification requires us to put devices into low power states
> > before executing _PTS and that's exactly what we're doing before a suspend to
> > RAM.  Thus, it seems that in general we need to do the same for hibernation on
> > ACPI systems.
> 
> It seems that if ACPI S4 is going to be used, Switching to low power
> state is something that should be done only immediately before entering
> that state (i.e. after the image has already been saved).

Doesn't.  Work.

> In particular, it should not be done just before the atomic copy.  It is
> true that (during resume) after the atomic copy snapshot is restored,
> drivers will need to be prepared (i.e. have saved whatever information
> is necessary) to _resume_ devices from the low power state, but that
> does not mean they have to actually be put into that low power state
> before the copy is made.
> 
> I agree that for the kexec implementation there may be additional
> issues.  For swsusp, uswsusp, and tuxonice, though, I don't see why
> there should be a problem.  I think that, as was recognized before, all
> of the issues are resolved by properly considering exactly what each
> callback should do and when it should be called.  The problems stem from
> ambiguous specifications, or trying to use the same callback for two
> different purposes or in two different cases.
> 
> Let me know if I'm mistaken.

See above. :-)

Greetings,
Rafael

  parent reply	other threads:[~2007-09-21 19:00 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1190266447.21818.17.camel@caritas-dev.intel.com>
2007-09-20 10:09 ` [RFC][PATCH 1/2 -mm] kexec based hibernation -v3: kexec jump Pavel Machek
     [not found] ` <20070920100941.GA12157@atrey.karlin.mff.cuni.cz>
2007-09-21  0:24   ` Nigel Cunningham
     [not found]   ` <200709211024.35991.nigel@nigel.suspend2.net>
2007-09-21  1:06     ` Andrew Morton
2007-09-21  1:19       ` Nigel Cunningham
     [not found]       ` <200709211120.00448.ncunningham@crca.org.au>
2007-09-21  1:41         ` Andrew Morton
     [not found]         ` <20070920184106.79e1858a.akpm@linux-foundation.org>
2007-09-21  1:57           ` Nigel Cunningham
     [not found]           ` <200709211157.28622.nigel@nigel.suspend2.net>
2007-09-21  2:18             ` Huang, Ying
     [not found]             ` <1190341137.21818.52.camel@caritas-dev.intel.com>
2007-09-21  2:25               ` Nigel Cunningham
     [not found]               ` <200709211225.25874.nigel@nigel.suspend2.net>
2007-09-21  2:45                 ` Huang, Ying
     [not found]                 ` <1190342757.21818.75.camel@caritas-dev.intel.com>
2007-09-21  2:58                   ` Nigel Cunningham
     [not found]                   ` <200709211259.00195.nigel@nigel.suspend2.net>
2007-09-21  4:46                     ` Eric W. Biederman
     [not found]                     ` <m1r6ksiq27.fsf@ebiederm.dsl.xmission.com>
2007-09-21  9:45                       ` Pavel Machek
     [not found]                       ` <20070921094512.GA20149@elf.ucw.cz>
2007-09-26 20:30                         ` Joseph Fannin
     [not found]                         ` <20070926203036.GF31759@nineveh.local>
2007-09-26 20:52                           ` Nigel Cunningham
2007-09-27  6:33                           ` Huang, Ying
     [not found]                           ` <1190874834.21818.300.camel@caritas-dev.intel.com>
2007-09-27  6:35                             ` Nigel Cunningham
2007-09-22 22:02                   ` Alon Bar-Lev
2007-09-21  3:33             ` Eric W. Biederman
2007-09-21  4:16             ` Andrew Morton
     [not found]             ` <m18x70ofp3.fsf@ebiederm.dsl.xmission.com>
2007-09-21 12:09               ` Rafael J. Wysocki
     [not found]               ` <200709211409.25008.rjw@sisk.pl>
2007-09-21 13:14                 ` huang ying
     [not found]                 ` <851fc09e0709210614q33cf3c81u1441fda17a66a6fd@mail.gmail.com>
2007-09-21 14:31                   ` Rafael J. Wysocki
     [not found]                   ` <200709211631.19130.rjw@sisk.pl>
2007-09-21 14:45                     ` Alan Stern
2007-09-21 15:27                       ` Rafael J. Wysocki
2007-09-21 15:02                     ` huang ying
     [not found]                     ` <851fc09e0709210802o3be2789s8e93410fa07f7066@mail.gmail.com>
2007-09-21 15:50                       ` Rafael J. Wysocki
2007-09-21 18:11                     ` Jeremy Maitin-Shepard
     [not found]                     ` <87sl576g8q.fsf@jbms.ath.cx>
2007-09-21 19:00                       ` Rafael J. Wysocki [this message]
2007-09-21 19:45                         ` Alan Stern
2007-09-21 11:56           ` Rafael J. Wysocki
     [not found]           ` <200709211356.30291.rjw@sisk.pl>
2007-09-21 11:58             ` Nigel Cunningham
2007-09-21 13:25             ` huang ying
2007-09-24 17:37       ` Thomas Meyer
2007-09-21  9:49     ` Pavel Machek
     [not found]     ` <20070921094908.GB20149@elf.ucw.cz>
2007-09-21 12:10       ` Rafael J. Wysocki
2007-09-21  2:55 ` Eric W. Biederman
2007-09-21  4:01 ` Eric W. Biederman
     [not found] ` <m1fy18sp5c.fsf@ebiederm.dsl.xmission.com>
2007-09-21  7:27   ` Huang, Ying
     [not found] ` <m1y7f0k6p4.fsf@ebiederm.dsl.xmission.com>
2007-09-21  8:42   ` Huang, Ying
     [not found] ` <200709212158.50538.nigel@nigel.suspend2.net>
     [not found]   ` <200709211418.20358.rjw@sisk.pl>
2007-09-21 12:15     ` Nigel Cunningham
2007-09-21 12:18   ` Rafael J. Wysocki
     [not found] <Pine.LNX.4.44L0.0709211540100.5816-100000@iolanthe.rowland.org>
2007-09-21 20:15 ` Rafael J. Wysocki
     [not found] ` <200709212215.26978.rjw@sisk.pl>
2007-09-21 20:26   ` Jeremy Maitin-Shepard
     [not found]   ` <87hcln69zv.fsf@jbms.ath.cx>
2007-09-21 20:53     ` Rafael J. Wysocki
     [not found]     ` <200709212253.02158.rjw@sisk.pl>
2007-09-21 21:08       ` Jeremy Maitin-Shepard
     [not found]       ` <87d4wb680u.fsf@jbms.ath.cx>
     [not found]         ` <200709212325.39599.rjw@sisk.pl>
2007-09-21 21:16           ` Jeremy Maitin-Shepard
     [not found]           ` <878x6z67n8.fsf@jbms.ath.cx>
2007-09-21 23:19             ` Kyle Moffett
     [not found]             ` <BF08447B-234F-4851-89BF-92A57EA801C6@mac.com>
2007-09-21 23:47               ` Nigel Cunningham
2007-09-22 10:34               ` Rafael J. Wysocki
     [not found]               ` <200709220947.58872.nigel@nigel.suspend2.net>
2007-09-22 10:40                 ` Rafael J. Wysocki
     [not found]                 ` <200709221240.25614.rjw@sisk.pl>
2007-10-11 20:54                   ` Pavel Machek
     [not found]                   ` <20071011205445.GA3975@ucw.cz>
2007-10-24 20:38                     ` Rafael J. Wysocki
     [not found]               ` <200709221234.18426.rjw@sisk.pl>
2007-09-22 18:00                 ` Kyle Moffett
     [not found]                 ` <3BCF760C-D77D-417A-809A-B20D04DD01D3@mac.com>
2007-09-22 21:51                   ` Rafael J. Wysocki
     [not found]                   ` <200709222351.32137.rjw@sisk.pl>
2007-09-26 20:52                     ` Joseph Fannin
2007-09-21 21:25         ` Rafael J. Wysocki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200709212100.11050.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=akpm@linux-foundation.org \
    --cc=ebiederm@xmission.com \
    --cc=huang.ying.caritas@gmail.com \
    --cc=jbms@cmu.edu \
    --cc=kexec@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=nigel@nigel.suspend2.net \
    --cc=nigel@suspend2.net \
    --cc=ying.huang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox