On a quota disabled image, with fault injection, SBI_QUOTA_NEED_REPAIR
will be set incorrectly in error path of f2fs_evict_inode(), fix it.

Signed-off-by: Chao Yu <yuch...@huawei.com>
---
 fs/f2fs/inode.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/f2fs/inode.c b/fs/f2fs/inode.c
index a33d7a849b2d..d1998ddf14fd 100644
--- a/fs/f2fs/inode.c
+++ b/fs/f2fs/inode.c
@@ -693,7 +693,8 @@ void f2fs_evict_inode(struct inode *inode)
 
        if (err) {
                f2fs_update_inode_page(inode);
-               set_sbi_flag(sbi, SBI_QUOTA_NEED_REPAIR);
+               if (dquot_initialize_needed(inode))
+                       set_sbi_flag(sbi, SBI_QUOTA_NEED_REPAIR);
        }
        sb_end_intwrite(inode->i_sb);
 no_delete:
-- 
2.18.0.rc1

Reply via email to