mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 00:53:34 +02:00
xfs: fix a missing unlock in xfs_growfs_data
The newly added check for the internal RT device needs to unlock
m_growlock just like all ther other error cases.
Fixes: bdc03eb5f9 ("xfs: allow internal RT devices for zoned mode")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
This commit is contained in:
parent
fcb255537b
commit
beba948713
|
|
@ -301,7 +301,7 @@ xfs_growfs_data(
|
|||
struct xfs_mount *mp,
|
||||
struct xfs_growfs_data *in)
|
||||
{
|
||||
int error = 0;
|
||||
int error;
|
||||
|
||||
if (!capable(CAP_SYS_ADMIN))
|
||||
return -EPERM;
|
||||
|
|
@ -309,8 +309,10 @@ xfs_growfs_data(
|
|||
return -EWOULDBLOCK;
|
||||
|
||||
/* we can't grow the data section when an internal RT section exists */
|
||||
if (in->newblocks != mp->m_sb.sb_dblocks && mp->m_sb.sb_rtstart)
|
||||
return -EINVAL;
|
||||
if (in->newblocks != mp->m_sb.sb_dblocks && mp->m_sb.sb_rtstart) {
|
||||
error = -EINVAL;
|
||||
goto out_error;
|
||||
}
|
||||
|
||||
/* update imaxpct separately to the physical grow of the filesystem */
|
||||
if (in->imaxpct != mp->m_sb.sb_imax_pct) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user