ext4: fix possible use after free in ext4_quota_enable
[platform/kernel/linux-exynos.git] / fs / ext4 / super.c
index 675f425..fb5ed94 100644 (file)
@@ -5636,9 +5636,9 @@ static int ext4_quota_enable(struct super_block *sb, int type, int format_id,
        qf_inode->i_flags |= S_NOQUOTA;
        lockdep_set_quota_inode(qf_inode, I_DATA_SEM_QUOTA);
        err = dquot_enable(qf_inode, type, format_id, flags);
-       iput(qf_inode);
        if (err)
                lockdep_set_quota_inode(qf_inode, I_DATA_SEM_NORMAL);
+       iput(qf_inode);
 
        return err;
 }