diff options
| author | Andrew Morton <akpm@osdl.org> | 2004-09-24 03:30:09 -0700 |
|---|---|---|
| committer | Patrick Mochel <mochel@digitalimplant.org> | 2004-09-24 03:30:09 -0700 |
| commit | 69d7d593cd286c125a39a040810c46da3eb9a79f (patch) | |
| tree | 4a2899debebb8dfac6b6361700033149390b24c1 | |
| parent | bdf286baee964c01b1dec4ca7b5921d41c1ff17c (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.c | 4 |
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) { |
