diff options
Diffstat (limited to 'mm/compaction.c')
| -rw-r--r-- | mm/compaction.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/mm/compaction.c b/mm/compaction.c index 7ea259d82a99..2f42d9528539 100644 --- a/mm/compaction.c +++ b/mm/compaction.c | |||
| @@ -701,8 +701,11 @@ static int compact_zone(struct zone *zone, struct compact_control *cc) | |||
| 701 | if (err) { | 701 | if (err) { |
| 702 | putback_lru_pages(&cc->migratepages); | 702 | putback_lru_pages(&cc->migratepages); |
| 703 | cc->nr_migratepages = 0; | 703 | cc->nr_migratepages = 0; |
| 704 | if (err == -ENOMEM) { | ||
| 705 | ret = COMPACT_PARTIAL; | ||
| 706 | goto out; | ||
| 707 | } | ||
| 704 | } | 708 | } |
| 705 | |||
| 706 | } | 709 | } |
| 707 | 710 | ||
| 708 | out: | 711 | out: |
