aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kara <[email protected]>2012-01-11 18:52:10 +0000
committerBen Myers <[email protected]>2012-01-25 11:01:31 -0600
commit9b025eb3a89e041bab6698e3858706be2385d692 (patch)
treeacb29c488c3f538c2041e279b701b0965cd9667b
parentdcd6c92267155e70a94b3927bce681ce74b80d1f (diff)
xfs: Fix missing xfs_iunlock() on error recovery path in xfs_readlink()
Commit b52a360b forgot to call xfs_iunlock() when it detected corrupted symplink and bailed out. Fix it by jumping to 'out' instead of doing return. CC: [email protected] CC: Carlos Maiolino <[email protected]> Signed-off-by: Jan Kara <[email protected]> Reviewed-by: Alex Elder <[email protected]> Reviewed-by: Dave Chinner <[email protected]> Signed-off-by: Ben Myers <[email protected]>
-rw-r--r--fs/xfs/xfs_vnodeops.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c
index 0cf52da9d246..ebdb88840a47 100644
--- a/fs/xfs/xfs_vnodeops.c
+++ b/fs/xfs/xfs_vnodeops.c
@@ -131,7 +131,8 @@ xfs_readlink(
__func__, (unsigned long long) ip->i_ino,
(long long) pathlen);
ASSERT(0);
- return XFS_ERROR(EFSCORRUPTED);
+ error = XFS_ERROR(EFSCORRUPTED);
+ goto out;
}