Messages in this thread Patch in this message | | | Date | Fri, 05 Feb 2010 10:26:27 +0100 | From | Roel Kluin <> | Subject | [PATCH] ocfs2: Fix contiguousness check in ocfs2_try_to_merge_extent_map() |
| |
The wrong member was compared in the continguousness check.
Acked-by: Tao Ma <tao.ma@oracle.com> Signed-off-by: Roel Kluin <roel.kluin@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;
| |