Re: [linux-pm] [PATCH 3/4] x86 hibernate: Mark ACPI NVS memory region at startup

Rafael J. Wysocki
2008-10-30T23:55:13Z

On Wednesday, 29 of October 2008, Pavel Machek wrote:
> Hi!
>
> > > > > +static int __init e820_mark_nvs_memory(void)
> > > > > +{
> > > > > + int i;
> > > > > +
> > > > > + if (efi_enabled)
> > > > > + return 0;
> > > >
> > > > Aha, not unrelated... why is that? EFI does not use acpi?
> > >
> > > With EFI we are not supposed to do that. Rui knows the details. Rui?
> > >
> > well,
> > about EFI nvs memory, I only get
> > "EfiACPIMemoryNVS: The OS and loader must preserve this memory range in
> > the working and ACPI S1???S3 states." in the ACPI spec 3.0b.
> > whether we should save/restore this piece of memory is not clear.

Well. it's clear enough. Section 15.3.2 evidently refers to E820 and the EFI's
GetMemoryMap() on equal footing.

> > I'd prefer not to touch it currently.
>
> EFI is a bootloader. Why should we change our runtime behaviour
> depending on bootloader?
>
> EFI should be still compatible with normal ACPI, right? ...like you
> should be able to boot the same kernel with the same ACPI BIOS using
> EFI or EFI w/ legacy emulation.
>
> So special-casing it here does not seem right.

I agree.

I'm going to send an updated patch to Len.

Thanks,
Rafael