提交 ae3b3e79 编写于 作者: C Christoph Hellwig 提交者: Yang Yingliang

xfs: fix a missing unlock on error in xfs_fs_map_blocks

stable inclusion
from linux-4.19.158
commit 05e0bb210209126f495401051996389831f7ba48

--------------------------------

[ Upstream commit 2bd3fa79 ]

We also need to drop the iolock when invalidate_inode_pages2 fails, not
only on all other error or successful cases.

Fixes: 52785112 ("xfs: implement pNFS export operations")
Signed-off-by: NChristoph Hellwig <hch@lst.de>
Reviewed-by: NDarrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: NSasha Levin <sashal@kernel.org>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
Signed-off-by: NCheng Jian <cj.chengjian@huawei.com>
上级 0833e447
...@@ -141,7 +141,7 @@ xfs_fs_map_blocks( ...@@ -141,7 +141,7 @@ xfs_fs_map_blocks(
goto out_unlock; goto out_unlock;
error = invalidate_inode_pages2(inode->i_mapping); error = invalidate_inode_pages2(inode->i_mapping);
if (WARN_ON_ONCE(error)) if (WARN_ON_ONCE(error))
return error; goto out_unlock;
end_fsb = XFS_B_TO_FSB(mp, (xfs_ufsize_t)offset + length); end_fsb = XFS_B_TO_FSB(mp, (xfs_ufsize_t)offset + length);
offset_fsb = XFS_B_TO_FSBT(mp, offset); offset_fsb = XFS_B_TO_FSBT(mp, offset);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册