Hi Sheng, On 2018/7/10 9:55, Sheng Yong wrote: > Hi, Chao, > > On 2018/7/9 23:25, Chao Yu wrote: >> From: Chao Yu <yuch...@huawei.com> >> >> This patch tries to fix incorrect extra_attr bit or i_extra_isize value >> in fsck. >> >> Signed-off-by: Chao Yu <yuch...@huawei.com> >> --- >> v2: >> - fix to replace F2FS_INLINE_DATA with F2FS_EXTRA_ATTR. >> fsck/fsck.c | 18 +++++++++++++++++- >> 1 file changed, 17 insertions(+), 1 deletion(-) >> >> diff --git a/fsck/fsck.c b/fsck/fsck.c >> index 05a6301..36d1977 100644 >> --- a/fsck/fsck.c >> +++ b/fsck/fsck.c >> @@ -655,7 +655,7 @@ void fsck_chk_inode_blk(struct f2fs_sb_info *sbi, u32 >> nid, >> u32 i_links = le32_to_cpu(node_blk->i.i_links); >> u64 i_size = le64_to_cpu(node_blk->i.i_size); >> u64 i_blocks = le64_to_cpu(node_blk->i.i_blocks); >> - int ofs = get_extra_isize(node_blk); >> + int ofs; >> unsigned char *en; >> int namelen; >> unsigned int idx = 0; >> @@ -719,6 +719,22 @@ void fsck_chk_inode_blk(struct f2fs_sb_info *sbi, u32 >> nid, >> ftype == F2FS_FT_FIFO || ftype == F2FS_FT_SOCK) >> goto check; >> >> + if (f2fs_has_extra_isize(&node_blk->i)) { >> + if (c.feature & cpu_to_le32(F2FS_FEATURE_EXTRA_ATTR)) { >> + if (node_blk->i.i_extra_isize > >> + cpu_to_le16(F2FS_TOTAL_EXTRA_ATTR_SIZE)) { >> + node_blk->i.i_extra_isize = >> + cpu_to_le16(F2FS_TOTAL_EXTRA_ATTR_SIZE); >> + need_fix = 1; >> + } >> + } else { >> + /* we don't support tuning F2FS_FEATURE_EXTRA_ATTR now >> */ >> + node_blk->i.i_inline |= ~F2FS_EXTRA_ATTR; > > node_blk->i.i_inline &= ~F2FS_EXTRA_ATTR;
Oh, sorry, let me fix this in v3, thanks for the review. :) Thanks, > > thanks :-) > . > >> + need_fix = 1; >> + } >> + } >> + ofs = get_extra_isize(node_blk); >> + >> if ((node_blk->i.i_inline & F2FS_INLINE_DATA)) { >> if (le32_to_cpu(node_blk->i.i_addr[ofs]) != 0) { >> /* should fix this bug all the time */ >> > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Linux-f2fs-devel mailing list > Linux-f2fs-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel > > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel