diff options
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/power/swsusp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/power/swsusp.c b/kernel/power/swsusp.c index 78b6e71b0813..f0ee4e7780d6 100644 --- a/kernel/power/swsusp.c +++ b/kernel/power/swsusp.c | |||
@@ -188,8 +188,10 @@ int swsusp_shrink_memory(void) | |||
188 | PAGES_FOR_IO; | 188 | PAGES_FOR_IO; |
189 | tmp = size; | 189 | tmp = size; |
190 | for_each_zone (zone) | 190 | for_each_zone (zone) |
191 | if (!is_highmem(zone)) | 191 | if (!is_highmem(zone) && populated_zone(zone)) { |
192 | tmp -= zone->free_pages; | 192 | tmp -= zone->free_pages; |
193 | tmp += zone->lowmem_reserve[ZONE_NORMAL]; | ||
194 | } | ||
193 | if (tmp > 0) { | 195 | if (tmp > 0) { |
194 | tmp = __shrink_memory(tmp); | 196 | tmp = __shrink_memory(tmp); |
195 | if (!tmp) | 197 | if (!tmp) |