diff options
author | Christoph Hellwig <hch@lst.de> | 2020-11-11 08:07:37 -0800 |
---|---|---|
committer | Darrick J. Wong <darrick.wong@oracle.com> | 2020-11-11 08:07:37 -0800 |
commit | 2bd3fa793aaa7e98b74e3653fdcc72fa753913b5 (patch) | |
tree | 82543cb20f7fd39e283d11a1a7f294985213bc5b /fs | |
parent | 54e9b09e153842ab5adb8a460b891e11b39e9c3d (diff) | |
download | linux-stable-2bd3fa793aaa7e98b74e3653fdcc72fa753913b5.tar.gz linux-stable-2bd3fa793aaa7e98b74e3653fdcc72fa753913b5.tar.bz2 linux-stable-2bd3fa793aaa7e98b74e3653fdcc72fa753913b5.zip |
xfs: fix a missing unlock on error in xfs_fs_map_blocks
We also need to drop the iolock when invalidate_inode_pages2 fails, not
only on all other error or successful cases.
Fixes: 527851124d10 ("xfs: implement pNFS export operations")
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/xfs/xfs_pnfs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/xfs_pnfs.c b/fs/xfs/xfs_pnfs.c index b101feb2aab4..f3082a957d5e 100644 --- a/fs/xfs/xfs_pnfs.c +++ b/fs/xfs/xfs_pnfs.c @@ -134,7 +134,7 @@ xfs_fs_map_blocks( goto out_unlock; error = invalidate_inode_pages2(inode->i_mapping); if (WARN_ON_ONCE(error)) - return error; + goto out_unlock; end_fsb = XFS_B_TO_FSB(mp, (xfs_ufsize_t)offset + length); offset_fsb = XFS_B_TO_FSBT(mp, offset); |