rpms/kernel/F-7 linux-2.6-hibernation-do-not-try-to-mark-invalid-pfns-as-nosave.patch, NONE, 1.1 kernel-2.6.spec, 1.3323, 1.3324

Chuck Ebbert (cebbert) fedora-extras-commits at redhat.com
Tue Aug 21 20:21:25 UTC 2007


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv15756

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6-hibernation-do-not-try-to-mark-invalid-pfns-as-nosave.patch 
Log Message:
* Tue Aug 21 2007 Chuck Ebbert <cebbert at redhat.com>
- Hibernation: do not try to mark invalid PFNs as nosave


linux-2.6-hibernation-do-not-try-to-mark-invalid-pfns-as-nosave.patch:

--- NEW FILE linux-2.6-hibernation-do-not-try-to-mark-invalid-pfns-as-nosave.patch ---
>From stable-bounces at linux.kernel.org Wed Aug 15 06:28:09 2007
From: "Rafael J. Wysocki" <rjw at sisk.pl>
Date: Wed, 15 Aug 2007 15:37:37 +0200
Subject: Hibernation: do not try to mark invalid PFNs as nosave
To: stable at kernel.org
Message-ID: <200708151537.37193.rjw at sisk.pl>
Content-Disposition: inline

From: Rafael J. Wysocki <rjw at sisk.pl>

On some systems some PFNs reported by the early initialization code as 'nosave'
may be invalid. =A0If we try to set the corresponding bits in the hibernation
bitmap, BUG_ON() in memory_bm_find_bit() will be triggered and the system
won't be able to boot (cf. https://bugzilla.novell.com/show_bug.cgi?id=296242).

Prevent this from happening by verifying if the 'nosave' PFNs are valid in
mark_nosave_pages().

Signed-off-by: Rafael J. Wysocki <rjw at sisk.pl>
Acked-by: Pavel Machek <pavel at ucw.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>

---
 kernel/power/snapshot.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--- a/kernel/power/snapshot.c
+++ b/kernel/power/snapshot.c
@@ -709,7 +709,8 @@ static void mark_nosave_pages(struct mem
 				region->end_pfn << PAGE_SHIFT);
 
 		for (pfn = region->start_pfn; pfn < region->end_pfn; pfn++)
-			memory_bm_set_bit(bm, pfn);
+			if (pfn_valid(pfn))
+				memory_bm_set_bit(bm, pfn);
 	}
 }
 


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3323
retrieving revision 1.3324
diff -u -r1.3323 -r1.3324
--- kernel-2.6.spec	21 Aug 2007 18:40:05 -0000	1.3323
+++ kernel-2.6.spec	21 Aug 2007 20:20:52 -0000	1.3324
@@ -580,6 +580,7 @@
 Patch600: linux-2.6-vm-silence-atomic-alloc-failures.patch
 Patch601: linux-2.6-input-ff-create-limit-memory.patch
 Patch602: linux-2.6-x86_64-e820_hole_size.patch
+Patch603: linux-2.6-hibernation-do-not-try-to-mark-invalid-pfns-as-nosave.patch
 Patch610: linux-2.6-defaults-fat-utf8.patch
 Patch620: linux-2.6-defaults-unicode-vt.patch
 Patch630: linux-2.6-defaults-nonmi.patch
@@ -1268,6 +1269,8 @@
 ApplyPatch linux-2.6-input-ff-create-limit-memory.patch
 # fix sizing of memory holes on x86_64
 ApplyPatch linux-2.6-x86_64-e820_hole_size.patch
+# fix marking of pages as nosave during boot
+ApplyPatch linux-2.6-hibernation-do-not-try-to-mark-invalid-pfns-as-nosave.patch
 
 # Changes to upstream defaults.
 # Use UTF-8 by default on VFAT.
@@ -2299,6 +2302,9 @@
 %endif
 
 %changelog
+* Tue Aug 21 2007 Chuck Ebbert <cebbert at redhat.com>
+- Hibernation: do not try to mark invalid PFNs as nosave
+
 * Tue Aug 21 2007 Dave Jones <davej at redhat.com>
 - 2.6.22.4
 




More information about the fedora-extras-commits mailing list