f2fs: handle dqget error in f2fs_transfer_project_quota()
[ Upstream commit 8051692f5f23260215bfe9a72e712d93606acc5f ]
We should set the error code when dqget() failed.
Fixes: 2c1d030569 ("f2fs: support F2FS_IOC_FS{GET,SET}XATTR")
Signed-off-by: Yangtao Li <frank.li@vivo.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
202048ec1e
commit
c3a1914b96
@@ -3013,15 +3013,16 @@ int f2fs_transfer_project_quota(struct inode *inode, kprojid_t kprojid)
|
|||||||
struct dquot *transfer_to[MAXQUOTAS] = {};
|
struct dquot *transfer_to[MAXQUOTAS] = {};
|
||||||
struct f2fs_sb_info *sbi = F2FS_I_SB(inode);
|
struct f2fs_sb_info *sbi = F2FS_I_SB(inode);
|
||||||
struct super_block *sb = sbi->sb;
|
struct super_block *sb = sbi->sb;
|
||||||
int err = 0;
|
int err;
|
||||||
|
|
||||||
transfer_to[PRJQUOTA] = dqget(sb, make_kqid_projid(kprojid));
|
transfer_to[PRJQUOTA] = dqget(sb, make_kqid_projid(kprojid));
|
||||||
if (!IS_ERR(transfer_to[PRJQUOTA])) {
|
if (IS_ERR(transfer_to[PRJQUOTA]))
|
||||||
|
return PTR_ERR(transfer_to[PRJQUOTA]);
|
||||||
|
|
||||||
err = __dquot_transfer(inode, transfer_to);
|
err = __dquot_transfer(inode, transfer_to);
|
||||||
if (err)
|
if (err)
|
||||||
set_sbi_flag(sbi, SBI_QUOTA_NEED_REPAIR);
|
set_sbi_flag(sbi, SBI_QUOTA_NEED_REPAIR);
|
||||||
dqput(transfer_to[PRJQUOTA]);
|
dqput(transfer_to[PRJQUOTA]);
|
||||||
}
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user