浏览代码

[PATCH] fix swap cluster offset

When we've allocated SWAPFILE_CLUSTER pages, ->cluster_next should be the
first index of swap cluster.  But current code probably sets it wrong offset.

Signed-off-by: Akinobu Mita <mita@miraclelinux.com>
Acked-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Akinobu Mita 19 年之前
父节点
当前提交
9b65ef59d4
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      mm/swapfile.c

+ 1 - 1
mm/swapfile.c

@@ -116,7 +116,7 @@ static inline unsigned long scan_swap_map(struct swap_info_struct *si)
 				last_in_cluster = offset + SWAPFILE_CLUSTER;
 				last_in_cluster = offset + SWAPFILE_CLUSTER;
 			else if (offset == last_in_cluster) {
 			else if (offset == last_in_cluster) {
 				spin_lock(&swap_lock);
 				spin_lock(&swap_lock);
-				si->cluster_next = offset-SWAPFILE_CLUSTER-1;
+				si->cluster_next = offset-SWAPFILE_CLUSTER+1;
 				goto cluster;
 				goto cluster;
 			}
 			}
 			if (unlikely(--latency_ration < 0)) {
 			if (unlikely(--latency_ration < 0)) {