mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-09 12:17:12 +09:00
f2fs: handle dqget error in f2fs_transfer_project_quota()
[ Upstream commit8051692f5f] 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
6d6415e5bc
commit
e5a56f13ba
@@ -2977,15 +2977,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]))
|
||||||
err = __dquot_transfer(inode, transfer_to);
|
return PTR_ERR(transfer_to[PRJQUOTA]);
|
||||||
if (err)
|
|
||||||
set_sbi_flag(sbi, SBI_QUOTA_NEED_REPAIR);
|
err = __dquot_transfer(inode, transfer_to);
|
||||||
dqput(transfer_to[PRJQUOTA]);
|
if (err)
|
||||||
}
|
set_sbi_flag(sbi, SBI_QUOTA_NEED_REPAIR);
|
||||||
|
dqput(transfer_to[PRJQUOTA]);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user