Commit a938c356 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki Committed by Linus Torvalds

[PATCH] swsusp: take lowmem reserves into account

swsusp allocates memory from the normal zone, so it cannot use lowmem
reserve pages from the lower zones.  Therefore it should not count these
pages as available to it.
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 3e3318de
...@@ -188,8 +188,10 @@ int swsusp_shrink_memory(void) ...@@ -188,8 +188,10 @@ int swsusp_shrink_memory(void)
PAGES_FOR_IO; PAGES_FOR_IO;
tmp = size; tmp = size;
for_each_zone (zone) for_each_zone (zone)
if (!is_highmem(zone)) if (!is_highmem(zone) && populated_zone(zone)) {
tmp -= zone->free_pages; tmp -= zone->free_pages;
tmp += zone->lowmem_reserve[ZONE_NORMAL];
}
if (tmp > 0) { if (tmp > 0) {
tmp = __shrink_memory(tmp); tmp = __shrink_memory(tmp);
if (!tmp) if (!tmp)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment