> -----Original Message----- > From: Junling Zheng [mailto:zhengjunl...@huawei.com] > Sent: Thursday, February 04, 2016 10:52 AM > To: Fan Li; 'Jaegeuk Kim'; heyun...@huawei.com > Cc: linux-f2fs-devel@lists.sourceforge.net > Subject: Re: [f2fs-dev] [PATCH v2] f2fs-tools: set segment_count in super > block correctly > > On 2016/2/3 13:29, Fan Li wrote: > > Now f2fs will check statistics recorded in super block in > > sanity_check_area_boundary() during mount,if number of segments per > > section is greater than 1, and the disk space isn't aligned with > > section, > > Hi Fan, Hi Kim: > > I'm uncertain about which unit the disk space should be aligned with? section > or zone? > > It looks like commit "e9dfbbb"(mkfs.f2fs: introduce zone align for main area) > > from Yunlei had changed the aligning unit from section to zone. > > So, should segment_count in superblock be aligned with zone rather than > section?
I'm afraid that my codes of mkfs is too old, it doesn't contain this patch, and it still uses section size to align main area. Of course if main area should be aligned with zone, the following patch should be modified accordingly. > > Thanks, > > Junling > > > mount will fail due to following condition: > > > > main_blkaddr + (segment_count_main << log_blocks_per_seg) != > > segment0_blkaddr + (segment_count << log_blocks_per_seg) > > > > this is because when the length of main area isn't aligned with > > section, mkfs didn't add the number of excess segments to > > segment_count_main, but add it to segment_count. > > Here align segment_count with section size first to prevent such problem. > > > > Signed-off-by: Fan Li <fanofcode...@samsung.com> > > --- > > mkfs/f2fs_format.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/mkfs/f2fs_format.c b/mkfs/f2fs_format.c index > > 66d7342..3366302 100644 > > --- a/mkfs/f2fs_format.c > > +++ b/mkfs/f2fs_format.c > > @@ -174,7 +174,8 @@ static int f2fs_prepare_super_block(void) > > } > > > > set_sb(segment_count, (config.total_sectors * config.sector_size - > > - zone_align_start_offset) / > > segment_size_bytes); > > + zone_align_start_offset) / > > segment_size_bytes / > > + config.segs_per_sec * > > + config.segs_per_sec); > > > > set_sb(segment0_blkaddr, zone_align_start_offset / blk_size_bytes); > > sb->cp_blkaddr = sb->segment0_blkaddr; > > > ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel