diff --git a/[refs] b/[refs] index 9a5668c32b08..9ccdd2893914 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4229fb1dc6843c49a14bb098719f8a696cdc44f8 +refs/heads/master: 4bf2bba3750f10aa9e62e6949bc7e8329990f01b diff --git a/trunk/mm/compaction.c b/trunk/mm/compaction.c index 7ea259d82a99..2f42d9528539 100644 --- a/trunk/mm/compaction.c +++ b/trunk/mm/compaction.c @@ -701,8 +701,11 @@ static int compact_zone(struct zone *zone, struct compact_control *cc) if (err) { putback_lru_pages(&cc->migratepages); cc->nr_migratepages = 0; + if (err == -ENOMEM) { + ret = COMPACT_PARTIAL; + goto out; + } } - } out: