On 2016/1/8 7:29, Jaegeuk Kim wrote:
> Hi Yunlei,
>
> Could you rebase the patch based on f2fs-tools.git?
> I can't merge this.
>
> Thanks,
Hi Kim,

I am sorry that, I have sent a new one.

Thanks,
>
> On Wed, Jan 06, 2016 at 03:54:37PM +0800, Yunlei He wrote:
>> This patch calculate main area begin from a new zone,
>> avoid misalign if segments per zone is not 1.
>>
>> Signed-off-by: Yunlei He <heyun...@huawei.com>
>> Signed-off-by: Shuoran Liu <liushuo...@huawei.com>
>> ---
>>   mkfs/f2fs_format.c | 21 +++++++++++----------
>>   1 file changed, 11 insertions(+), 10 deletions(-)
>>
>> diff --git a/mkfs/f2fs_format.c b/mkfs/f2fs_format.c
>> index 66d7342..fe45322 100644
>> --- a/mkfs/f2fs_format.c
>> +++ b/mkfs/f2fs_format.c
>> @@ -126,7 +126,8 @@ static int f2fs_prepare_super_block(void)
>>      u_int32_t sit_segments;
>>      u_int32_t blocks_for_sit, blocks_for_nat, blocks_for_ssa;
>>      u_int32_t total_valid_blks_available;
>> -    u_int64_t zone_align_start_offset, diff, total_meta_segments;
>> +    u_int64_t zone_align_start_offset, diff;
>> +    u_int64_t total_meta_zones, total_meta_segments;
>>      u_int32_t sit_bitmap_size, max_sit_bitmap_size;
>>      u_int32_t max_nat_bitmap_size, max_nat_segments;
>>      u_int32_t total_zones;
>> @@ -259,16 +260,17 @@ static int f2fs_prepare_super_block(void)
>>              set_sb(segment_count_ssa, get_sb(segment_count_ssa) +
>>                      (config.segs_per_zone - diff));
>>
>> -    set_sb(main_blkaddr, get_sb(ssa_blkaddr) + get_sb(segment_count_ssa) *
>> -                     config.blks_per_seg);
>> +    total_meta_zones = ZONE_ALIGN(total_meta_segments *
>> +                                            config.blks_per_seg);
>>
>> -    set_sb(segment_count_main, get_sb(segment_count) -
>> -                    (get_sb(segment_count_ckpt) +
>> -                     get_sb(segment_count_sit) +
>> -                     get_sb(segment_count_nat) +
>> -                     get_sb(segment_count_ssa)));
>> +    set_sb(main_blkaddr, get_sb(segment0_blkaddr) + total_meta_zones *
>> +                                                            
>> config.segs_per_zone * config.blks_per_seg);
>> +
>> +    total_zones = get_sb(segment_count) / (config.segs_per_zone) -
>> +                                                    total_meta_zones;
>>
>> -    set_sb(section_count, get_sb(segment_count_main) / config.segs_per_sec);
>> +    set_sb(section_count, total_zones * config.secs_per_zone);
>>
>>      set_sb(segment_count_main, get_sb(section_count) * config.segs_per_sec);
>>
>> @@ -297,7 +299,6 @@ static int f2fs_prepare_super_block(void)
>>      set_sb(meta_ino, 2);
>>      set_sb(root_ino, 3);
>>
>> -    total_zones = get_sb(segment_count_main) / (config.segs_per_zone);
>>      if (total_zones <= 6) {
>>              MSG(1, "\tError: %d zones: Need more zones \
>>                      by shrinking zone size\n", total_zones);
>> --
>> 1.9.1
>
> .
>


------------------------------------------------------------------------------
_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to