diff options
author | Joonsoo Kim <js1304@gmail.com> | 2016-01-14 18:20:48 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-01-14 19:00:49 -0500 |
commit | 7546934570f48283b7fe64a56d1c984fcb1e341e (patch) | |
tree | 113bc8e01f86b8e7bc171fc285f621ac5c4de064 /mm/compaction.c | |
parent | a8ae49917077facbe4ed7b3a89bf025b1cefa0ed (diff) |
mm/compaction.c: __compact_pgdat() code cleanuup
This patch uses is_via_compact_memory() to distinguish compaction from
sysfs or sysctl. And, this patch also reduces indentation on
compaction_defer_reset() by filtering these cases first before checking
watermark.
There is no functional change.
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Acked-by: Yaowei Bai <baiyaowei@cmss.chinamobile.com>
Acked-by: David Rientjes <rientjes@google.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/compaction.c')
-rw-r--r-- | mm/compaction.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/mm/compaction.c b/mm/compaction.c index ac6c6943d2ce..585de54dbe8c 100644 --- a/mm/compaction.c +++ b/mm/compaction.c | |||
@@ -1658,14 +1658,15 @@ static void __compact_pgdat(pg_data_t *pgdat, struct compact_control *cc) | |||
1658 | !compaction_deferred(zone, cc->order)) | 1658 | !compaction_deferred(zone, cc->order)) |
1659 | compact_zone(zone, cc); | 1659 | compact_zone(zone, cc); |
1660 | 1660 | ||
1661 | if (cc->order > 0) { | ||
1662 | if (zone_watermark_ok(zone, cc->order, | ||
1663 | low_wmark_pages(zone), 0, 0)) | ||
1664 | compaction_defer_reset(zone, cc->order, false); | ||
1665 | } | ||
1666 | |||
1667 | VM_BUG_ON(!list_empty(&cc->freepages)); | 1661 | VM_BUG_ON(!list_empty(&cc->freepages)); |
1668 | VM_BUG_ON(!list_empty(&cc->migratepages)); | 1662 | VM_BUG_ON(!list_empty(&cc->migratepages)); |
1663 | |||
1664 | if (is_via_compact_memory(cc->order)) | ||
1665 | continue; | ||
1666 | |||
1667 | if (zone_watermark_ok(zone, cc->order, | ||
1668 | low_wmark_pages(zone), 0, 0)) | ||
1669 | compaction_defer_reset(zone, cc->order, false); | ||
1669 | } | 1670 | } |
1670 | } | 1671 | } |
1671 | 1672 | ||