summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2004-09-24 03:30:09 -0700
committerPatrick Mochel <mochel@digitalimplant.org>2004-09-24 03:30:09 -0700
commit69d7d593cd286c125a39a040810c46da3eb9a79f (patch)
tree4a2899debebb8dfac6b6361700033149390b24c1
parentbdf286baee964c01b1dec4ca7b5921d41c1ff17c (diff)
[PATCH] swsusp: kill crash when too much memory is free
From: Pavel Machek <pavel@ucw.cz> If too much memory is free, swsusp dies in quite a ugly way. Even when it is not neccessary to relocate pagedir, it is proably still neccessary to relocate individual pages. Thanks to Kurt Garloff and Stefan Seyfried. Signed-off-by: Andrew Morton <akpm@osdl.org>
-rw-r--r--kernel/power/swsusp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/power/swsusp.c b/kernel/power/swsusp.c
index 5b7fcecb55c0..f65d295478c4 100644
--- a/kernel/power/swsusp.c
+++ b/kernel/power/swsusp.c
@@ -942,9 +942,9 @@ static int __init swsusp_pagedir_relocate(void)
printk("Relocating pagedir ");
- if(!does_collide_order(old_pagedir, (unsigned long)old_pagedir, pagedir_order)) {
+ if (!does_collide_order(old_pagedir, (unsigned long)old_pagedir, pagedir_order)) {
printk("not necessary\n");
- return 0;
+ return check_pagedir();
}
while ((m = (void *) __get_free_pages(GFP_ATOMIC, pagedir_order)) != NULL) {