aboutsummaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorMel Gorman <[email protected]>2012-01-12 17:19:38 -0800
committerLinus Torvalds <[email protected]>2012-01-12 20:13:09 -0800
commitc82449352854ff09e43062246af86bdeb628f0c3 (patch)
tree9cb8052e425c8cdab24ac41e83bbb672832ce54e /include/linux
parentb969c4ab9f182a6e1b2a0848be349f99714947b0 (diff)
mm: compaction: make isolate_lru_page() filter-aware again
Commit 39deaf85 ("mm: compaction: make isolate_lru_page() filter-aware") noted that compaction does not migrate dirty or writeback pages and that is was meaningless to pick the page and re-add it to the LRU list. This had to be partially reverted because some dirty pages can be migrated by compaction without blocking. This patch updates "mm: compaction: make isolate_lru_page" by skipping over pages that migration has no possibility of migrating to minimise LRU disruption. Signed-off-by: Mel Gorman <[email protected]> Reviewed-by: Rik van Riel<[email protected]> Cc: Andrea Arcangeli <[email protected]> Reviewed-by: Minchan Kim <[email protected]> Cc: Dave Jones <[email protected]> Cc: Jan Kara <[email protected]> Cc: Andy Isaacson <[email protected]> Cc: Nai Xia <[email protected]> Cc: Johannes Weiner <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/mmzone.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
index 42e544cd4c9f..2038b90ca6e3 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
@@ -177,6 +177,8 @@ struct lruvec {
#define ISOLATE_CLEAN ((__force isolate_mode_t)0x4)
/* Isolate unmapped file */
#define ISOLATE_UNMAPPED ((__force isolate_mode_t)0x8)
+/* Isolate for asynchronous migration */
+#define ISOLATE_ASYNC_MIGRATE ((__force isolate_mode_t)0x10)
/* LRU Isolation modes. */
typedef unsigned __bitwise__ isolate_mode_t;