diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c index b2951cd930d8..448c75e80b89 100644 --- a/fs/f2fs/gc.c +++ b/fs/f2fs/gc.c @@ -1566,6 +1566,16 @@ next_step: continue; } + if (f2fs_has_inline_data(inode)) { + iput(inode); + set_sbi_flag(sbi, SBI_NEED_FSCK); + f2fs_err_ratelimited(sbi, + "inode %lx has both inline_data flag and " + "data block, nid=%u, ofs_in_node=%u", + inode->i_ino, dni.nid, ofs_in_node); + continue; + } + err = f2fs_gc_pinned_control(inode, gc_type, segno); if (err == -EAGAIN) { iput(inode);