quota: fixup *_write_file_info() to return proper error code

For v1_write_file_info function, when quota_write() returns 0,
it should be considered an EIO error. And for v2_write_file_info(),
fix to proper error return code instead of raw number.

Signed-off-by: Yangtao Li <frank.li@vivo.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Message-Id: <20230227120216.31306-1-frank.li@vivo.com>
This commit is contained in:
Yangtao Li 2023-02-27 20:02:15 +08:00 committed by Jan Kara
parent dced733d7f
commit f8107c996f
2 changed files with 2 additions and 2 deletions

View File

@ -206,7 +206,7 @@ static int v1_write_file_info(struct super_block *sb, int type)
sizeof(struct v1_disk_dqblk), v1_dqoff(0));
if (ret == sizeof(struct v1_disk_dqblk))
ret = 0;
else if (ret > 0)
else if (ret >= 0)
ret = -EIO;
out:
up_write(&dqopt->dqio_sem);

View File

@ -212,7 +212,7 @@ static int v2_write_file_info(struct super_block *sb, int type)
up_write(&dqopt->dqio_sem);
if (size != sizeof(struct v2_disk_dqinfo)) {
quota_error(sb, "Can't write info structure");
return -1;
return size < 0 ? size : -EIO;
}
return 0;
}