Andreas Dilger wrote: > On Jan 03, 2008 14:10 -0600, Eric Sandeen wrote: >> @@ -1732,17 +1735,19 @@ static void ext4_mb_scan_aligned(struct >> + /* find first stripe-aligned block in group */ >> + a = e4b->bd_group * EXT4_BLOCKS_PER_GROUP(sb) >> + le32_to_cpu(sbi->s_es->s_first_data_block); >> + a += sbi->s_stripe - 1; > > Why not just have "+ sbi->s_stipe - 1" on the previous line, instead of "+="? hmm good point. > Also minor coding style nit: the "+" is normally at the end of the previous > line instead of at the start of the next line, so: > > /* find first stripe-aligned block in group */ > a = e4b->bd_group * EXT4_BLOCKS_PER_GROUP(sb) + > le32_to_cpu(sbi->s_es->s_first_data_block) + sbi->s_stripe - 1; Ok, that was inherited :) >> + a = (a * sbi->s_stripe) - le32_to_cpu(sbi->s_es->s_first_data_block); >> + i = do_div(a, EXT4_BLOCKS_PER_GROUP(sb)); > > I guess this doesn't stricly need to be a modulus either, because we know > which group this will be in and can just subtract the start. You can just do: > > /* find first stripe-aligned block in this group */ > group_start = e4b->bd_group * EXT4_BLOCKS_PER_GROUP(sb) +; > le32_to_cpu(sbi->s_es->s_first_data_block); > > a = group_start + sbi->s_stripe - 1; > do_div(a, sbi->s_stripe); > a = (a * sbi->s_stripe) - group_start; Ok, I knew I had stared at this for too long :) 4th try coming soon. -Eric - To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html