From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Len Brown <lenb@kernel.org>
Cc: ACPI Devel Maling List <linux-acpi@vger.kernel.org>,
pm list <linux-pm@lists.linux-foundation.org>,
Nigel Cunningham <ncunningham@crca.org.au>,
Pavel Machek <pavel@suse.cz>, Ingo Molnar <mingo@elte.hu>,
Zhang Rui <rui.zhang@intel.com>
Subject: [PATCH 3/4] x86 hibernate: Mark ACPI NVS memory region at startup (rev. 2)
Date: Fri, 31 Oct 2008 01:02:41 +0100 [thread overview]
Message-ID: <200810310102.42041.rjw@sisk.pl> (raw)
In-Reply-To: <200810262054.24929.rjw@sisk.pl>
Hi Len,
Please replace this patch with the appended one.
I have verified that we are supposed to save/restore the NVS area in the EFI
case too.
Thanks,
Rafael
On Sunday, 26 of October 2008, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rjw@sisk.pl>
> Subject: x86 hibernate: Mark ACPI NVS memory region at startup
>
> Introduce new initcall for marking the ACPI NVS memory at startup, so
> that it can be saved/restore during hibernation/resume.
>
> Based on a patch by Zhang Rui.
>
> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
> Cc: Zhang Rui <rui.zhang@intel.com>
> ---
> arch/x86/kernel/e820.c | 25 +++++++++++++++++++++++++
> 1 files changed, 25 insertions(+), 0 deletions(-)
>
> diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
> index ce97bf3..e1e63a8 100644
> --- a/arch/x86/kernel/e820.c
> +++ b/arch/x86/kernel/e820.c
> @@ -20,6 +20,7 @@
> #include <linux/pfn.h>
> #include <linux/suspend.h>
> #include <linux/firmware-map.h>
> +#include <linux/efi.h>
>
> #include <asm/pgtable.h>
> #include <asm/page.h>
> @@ -665,6 +666,30 @@ void __init e820_mark_nosave_regions(unsigned long limit_pfn)
> }
> #endif
>
> +#ifdef CONFIG_HIBERNATION
> +/**
> + * Mark ACPI NVS memory region, so that we can save/restore it during
> + * hibernation and the subsequent resume.
> + */
> +static int __init e820_mark_nvs_memory(void)
> +{
> + int i;
> +
> + if (efi_enabled)
> + return 0;
> +
> + for (i = 0; i < e820.nr_map; i++) {
> + struct e820entry *ei = &e820.map[i];
> +
> + if (ei->type == E820_NVS)
> + hibernate_nvs_register(ei->addr, ei->size);
> + }
> +
> + return 0;
> +}
> +core_initcall(e820_mark_nvs_memory);
> +#endif
> +
> /*
> * Early reserved memory areas.
> */
---
From: Rafael J. Wysocki <rjw@sisk.pl>
Subject: x86 hibernate: Mark ACPI NVS memory region at startup
Introduce new initcall for marking the ACPI NVS memory at startup, so
that it can be saved/restored during hibernation/resume.
Based on a patch by Zhang Rui.
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Cc: Zhang Rui <rui.zhang@intel.com>
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index ce97bf3..261d19c 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -665,6 +665,27 @@ void __init e820_mark_nosave_regions(unsigned long limit_pfn)
}
#endif
+#ifdef CONFIG_HIBERNATION
+/**
+ * Mark ACPI NVS memory region, so that we can save/restore it during
+ * hibernation and the subsequent resume.
+ */
+static int __init e820_mark_nvs_memory(void)
+{
+ int i;
+
+ for (i = 0; i < e820.nr_map; i++) {
+ struct e820entry *ei = &e820.map[i];
+
+ if (ei->type == E820_NVS)
+ hibernate_nvs_register(ei->addr, ei->size);
+ }
+
+ return 0;
+}
+core_initcall(e820_mark_nvs_memory);
+#endif
+
/*
* Early reserved memory areas.
*/
next prev parent reply other threads:[~2008-10-30 23:57 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-26 19:48 [PATCH 0/4] Hibernate: Handle ACPI NVS memory as required by the spec (rev. 2) Rafael J. Wysocki
2008-10-26 19:50 ` [PATCH 1/4] Hibernate: Call platform_begin before swsusp_shrink_memory Rafael J. Wysocki
2008-10-26 19:50 ` Rafael J. Wysocki
2008-10-26 19:52 ` [PATCH 2/4] ACPI hibernate: Add a mechanism to save/restore ACPI NVS memory Rafael J. Wysocki
2008-10-26 19:52 ` Rafael J. Wysocki
2008-10-26 19:54 ` [PATCH 3/4] x86 hibernate: Mark ACPI NVS memory region at startup Rafael J. Wysocki
2008-10-26 19:54 ` Rafael J. Wysocki
2008-10-28 9:17 ` Yinghai Lu
2008-10-28 9:17 ` Yinghai Lu
2008-10-28 13:30 ` Rafael J. Wysocki
2008-10-28 13:30 ` Rafael J. Wysocki
2008-10-31 0:02 ` Rafael J. Wysocki [this message]
2008-11-07 2:24 ` [PATCH 3/4] x86 hibernate: Mark ACPI NVS memory region at startup (rev. 2) Len Brown
2008-11-07 2:24 ` Len Brown
2008-10-31 0:02 ` Rafael J. Wysocki
2008-10-26 19:56 ` [PATCH 4/4] ACPI hibernate: Introduce new kernel parameter acpi_sleep=s4_nonvs Rafael J. Wysocki
2008-10-26 19:56 ` Rafael J. Wysocki
2008-10-28 5:37 ` [PATCH 0/4] Hibernate: Handle ACPI NVS memory as required by the spec (rev. 2) Len Brown
2008-10-28 5:37 ` Len Brown
2008-10-28 13:31 ` Rafael J. Wysocki
2008-10-28 13:31 ` 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=200810310102.42041.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=mingo@elte.hu \
--cc=ncunningham@crca.org.au \
--cc=pavel@suse.cz \
--cc=rui.zhang@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.