Re: [linux-pm] [RFC PATCH 2/4] ACPI: introduce the mechanism to save/restore ACPI NVS memory

Henrique de Moraes Holschuh
2008-07-09T14:58:58Z

On Tue, 08 Jul 2008, Pavel Machek wrote:
> > > static int acpi_hibernation_begin(void)
> > > {
> > > acpi_target_sleep_state = ACPI_STATE_S4;
> > >
> > > - return 0;
> > > + /* allocate pages for ACPI NVS memory before swsusp_shrink_memory */
> > > + return acpi_allocate_nvs_pages();
> >
> > I think we shouldn't abort hibernation because of that.
> >
> > This may be an emergency hibernation due to critical battery status and we
> > surely don't want to about that.
>
> I disagree here. If spec says 'you must save this', and we don't, we
> are asking for subtle, dangerous, and very hard to repoduce problems.

Indeed. Especially after we start doing the right thing, and vendors WILL
expect us to do the right thing (save the NVS memory) *always*, not just
"almost always".

If you don't want the hibernate path to fail because of OOM, have whatever
memory it needs pre-allocated, set aside and protected at startup so that it
will always be there when you need to hibernate.

--
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
Henrique Holschuh