The wrong member was compared in the continguousness check.
Acked-by: Tao Ma <[email protected]>
Signed-off-by: Roel Kluin <[email protected]>
---
>> } 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;
On Fri, Feb 05, 2010 at 10:26:27AM +0100, Roel Kluin wrote:
> The wrong member was compared in the continguousness check.
>
> Acked-by: Tao Ma <[email protected]>
> Signed-off-by: Roel Kluin <[email protected]>
This patch is now in the fixes branch of ocfs2.git.
Joel
--
"Sometimes when reading Goethe I have the paralyzing suspicion
that he is trying to be funny."
- Guy Davenport
Joel Becker
Principal Software Developer
Oracle
E-mail: [email protected]
Phone: (650) 506-8127