[Ocfs2-devel] [PATCH] ocfs2: Fix contiguousness check in ocfs2_try_to_merge_extent_map()

Roel Kluin roel.kluin at gmail.com
Fri Feb 5 01:26:27 PST 2010


The wrong member was compared in the continguousness check.

Acked-by: Tao Ma <tao.ma at oracle.com>
Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
---
>>         } else if ((ins->ei_phys + ins->ei_clusters) == emi->ei_phys &&
>>                    (ins->ei_cpos + ins->ei_clusters) == emi->ei_phys &&

>> should that 2nd emi->ei_phys be emi->ei_cpos?
> oh, yes, you are right. Do you want to provide a patch?

Here, I added your ack.

diff --git a/fs/ocfs2/extent_map.c b/fs/ocfs2/extent_map.c
index d35a27f..5328529 100644
--- a/fs/ocfs2/extent_map.c
+++ b/fs/ocfs2/extent_map.c
@@ -192,7 +192,7 @@ static int ocfs2_try_to_merge_extent_map(struct ocfs2_extent_map_item *emi,
 		emi->ei_clusters += ins->ei_clusters;
 		return 1;
 	} else if ((ins->ei_phys + ins->ei_clusters) == emi->ei_phys &&
-		   (ins->ei_cpos + ins->ei_clusters) == emi->ei_phys &&
+		   (ins->ei_cpos + ins->ei_clusters) == emi->ei_cpos &&
 		   ins->ei_flags == emi->ei_flags) {
 		emi->ei_phys = ins->ei_phys;
 		emi->ei_cpos = ins->ei_cpos;



More information about the Ocfs2-devel mailing list