[RFC 02/11] swap: Change SWAPFILE_CLUSTER to 512

From: Huang, Ying
Date: Tue Aug 09 2016 - 12:41:56 EST


From: Huang Ying <ying.huang@xxxxxxxxx>

In this patch, the size of swap cluster is changed to that of THP on
x86_64 (512). This is for THP (Transparent Huge Page) swap support on
x86_64. Where one swap cluster will be used to hold the contents of
each THP swapped out. And some information of the swapped out THP (such
as compound map count) will be recorded in the swap_cluster_info data
structure.

In effect, this will enlarge swap cluster size by 2 times. Which may
make it harder to find a free cluster when swap space becomes
fragmented. So that, this may reduce the continuous swap space
allocation and sequence write if that happens in theory. The
performance test in 0day show no regressions caused by this.

Cc: Hugh Dickins <hughd@xxxxxxxxxx>
Cc: Shaohua Li <shli@xxxxxxxxxx>
Cc: Minchan Kim <minchan@xxxxxxxxxx>
Cc: Rik van Riel <riel@xxxxxxxxxx>
Signed-off-by: "Huang, Ying" <ying.huang@xxxxxxxxx>
---
mm/swapfile.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/swapfile.c b/mm/swapfile.c
index 09e3877..18f9292 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -196,7 +196,7 @@ static void discard_swap_cluster(struct swap_info_struct *si,
}
}

-#define SWAPFILE_CLUSTER 256
+#define SWAPFILE_CLUSTER 512
#define LATENCY_LIMIT 256

static inline void cluster_set_flag(struct swap_cluster_info *info,
--
2.8.1