From: Pavel Machek <pavel@suse.cz>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Yinghai Lu <yhlu.kernel@gmail.com>,
Zhang Rui <rui.zhang@intel.com>,
linux-pm <linux-pm@lists.linux-foundation.org>,
linux-acpi <linux-acpi@vger.kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [linux-pm] [RFC PATCH 0/4] save and restore ACPI NVS memory during hibernation
Date: Mon, 14 Jul 2008 08:26:09 +0200 [thread overview]
Message-ID: <20080714062609.GD31949@elf.ucw.cz> (raw)
In-Reply-To: <200807120240.21477.rjw@sisk.pl>
On Sat 2008-07-12 02:40:20, Rafael J. Wysocki wrote:
> On Friday, 11 of July 2008, Yinghai Lu wrote:
> > On Fri, Jul 11, 2008 at 1:59 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> > > On Friday, 11 of July 2008, Pavel Machek wrote:
> > >> On Fri 2008-07-11 21:18:34, Rafael J. Wysocki wrote:
> > >> > On Friday, 11 of July 2008, Pavel Machek wrote:
> > >> > > On Wed 2008-07-09 21:37:18, Rafael J. Wysocki wrote:
> > >> > > > On Tuesday, 8 of July 2008, Pavel Machek wrote:
> > >> > > > > Hi!
> > >> > > > >
> > >> > > > > > According to the ACPI spec, ACPI NVS memory region is required to
> > >> > > > > > be saved/restored by OS during hibernation.
> > >> > > > > >
> > >> > > > > > Section 15.3.2 ACPI Spec 3.0b,
> > >> > > > > > "OSPM will call the _PTS control method some time before entering
> > >> > > > > > a sleeping state, to allow the platform???s AML code to update
> > >> > > > > > this memory image before entering the sleeping state.
> > >> > > > > > After the system awakes from an S4 state, OSPM will restore this
> > >> > > > > > memory area and call the _WAK control method to enable the BIOS
> > >> > > > > > to reclaim its memory image."
> > >> > > > > >
> > >> > > > > > This patch set add the mechanism to save/restore ACPI NVS memory
> > >> > > > > > during hibernation.
> > >> > > > > >
> > >> > > > > > Patch 01: call platform_begin before swsusp_shrink_memory.
> > >> > > > > > So that we can allocate enough pages for ACPI NVS memory
> > >> > > > > > before shrink the memory.
> > >> > > > >
> > >> > > > > Why is it neccessary to allocate memory for a copy? We should be able
> > >> > > > > to save ACPI NVS area same way we are saving kernel pages, no?
> > >> > > >
> > >> > > > Because we want to restore it from the hibernated kernel (when it gets control
> > >> > > > back again).
> > >> > >
> > >> > > Why is that important? So we can run some ACPI methods from hibernated
> > >> > > kernel before restoring it?
> > >> >
> > >> > We're supposed to restore it right prior to executing _WAK, which is after
> > >> > we've executed _BFS. This is a bit theoretical, because no one seems to
> > >> > actaully implement _BFS, but well.
> > >>
> > >> Could we just call _BFS from the "loading" kernel, instead? That would
> > >> save us that copying code...
> > >
> > > I'd prefer not to, because that would require the boot kernel to support ACPI,
> > > which need not (and in fact should not IMO) be the case at present.
> > >
> > > Anyway, we'd have to either copy the NVS data into memory which is mapped and
> > > can be saved, or to map the NVS area in order to save/restore it, which I
> > > wouldn't like to do.
> >
> > io_remap doesn't work at that time?
>
> Yes, it does, but to use it, we would have to add extra information to the
> image header describing the location of the NVS data within the image.
> I prefer the Zhang Rui's approach to this.
Ok, I guess I prefer it now, too. Feel free to add ACK on the series.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
prev parent reply other threads:[~2008-07-14 6:25 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-03 2:24 [RFC PATCH 0/4] save and restore ACPI NVS memory during hibernation Zhang Rui
2008-07-08 19:37 ` [linux-pm] " Pavel Machek
2008-07-09 19:37 ` Rafael J. Wysocki
2008-07-11 18:51 ` Pavel Machek
2008-07-11 19:18 ` Rafael J. Wysocki
2008-07-11 20:52 ` Pavel Machek
2008-07-11 20:59 ` Rafael J. Wysocki
2008-07-11 21:56 ` Yinghai Lu
2008-07-12 0:40 ` Rafael J. Wysocki
2008-07-14 6:26 ` Pavel Machek [this message]
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=20080714062609.GD31949@elf.ucw.cz \
--to=pavel@suse.cz \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=rjw@sisk.pl \
--cc=rui.zhang@intel.com \
--cc=yhlu.kernel@gmail.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