quota: Push dqio_sem down to ->write_file_info()

Push down acquisition of dqio_sem into ->write_file_info() callback.
Mostly for consistency with other operations.

Reviewed-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
Jan Kara
2017-06-09 08:45:43 +02:00
父節點 f14618c682
當前提交 9a8ae30e73
共有 4 個文件被更改,包括 13 次插入12 次删除

查看文件

@@ -415,10 +415,8 @@ int dquot_acquire(struct dquot *dquot)
ret = dqopt->ops[dquot->dq_id.type]->commit_dqblk(dquot);
/* Write the info if needed */
if (info_dirty(&dqopt->info[dquot->dq_id.type])) {
down_write(&dqopt->dqio_sem);
ret2 = dqopt->ops[dquot->dq_id.type]->write_file_info(
dquot->dq_sb, dquot->dq_id.type);
up_write(&dqopt->dqio_sem);
}
if (ret < 0)
goto out_iolock;
@@ -482,10 +480,8 @@ int dquot_release(struct dquot *dquot)
ret = dqopt->ops[dquot->dq_id.type]->release_dqblk(dquot);
/* Write the info */
if (info_dirty(&dqopt->info[dquot->dq_id.type])) {
down_write(&dqopt->dqio_sem);
ret2 = dqopt->ops[dquot->dq_id.type]->write_file_info(
dquot->dq_sb, dquot->dq_id.type);
up_write(&dqopt->dqio_sem);
}
if (ret >= 0)
ret = ret2;
@@ -2054,13 +2050,9 @@ EXPORT_SYMBOL(dquot_transfer);
*/
int dquot_commit_info(struct super_block *sb, int type)
{
int ret;
struct quota_info *dqopt = sb_dqopt(sb);
down_write(&dqopt->dqio_sem);
ret = dqopt->ops[type]->write_file_info(sb, type);
up_write(&dqopt->dqio_sem);
return ret;
return dqopt->ops[type]->write_file_info(sb, type);
}
EXPORT_SYMBOL(dquot_commit_info);