]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - glsdk/meta-ti-glsdk.git/blob - recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.3/0012-xfs-Fix-missing-xfs_iunlock-on-error-recovery-path-i.patch
linux-ti33x-psp 3.2: update to 3.2.5
[glsdk/meta-ti-glsdk.git] / recipes-kernel / linux / linux-ti33x-psp-3.2 / 3.2.3 / 0012-xfs-Fix-missing-xfs_iunlock-on-error-recovery-path-i.patch
1 From 2f455c0d809c7c2b9e340feb0e4db1a4a3580762 Mon Sep 17 00:00:00 2001
2 From: Jan Kara <jack@suse.cz>
3 Date: Wed, 11 Jan 2012 18:52:10 +0000
4 Subject: [PATCH 12/90] xfs: Fix missing xfs_iunlock() on error recovery path
5  in xfs_readlink()
7 commit 9b025eb3a89e041bab6698e3858706be2385d692 upstream.
9 Commit b52a360b forgot to call xfs_iunlock() when it detected corrupted
10 symplink and bailed out. Fix it by jumping to 'out' instead of doing return.
12 CC: Carlos Maiolino <cmaiolino@redhat.com>
13 Signed-off-by: Jan Kara <jack@suse.cz>
14 Reviewed-by: Alex Elder <elder@kernel.org>
15 Reviewed-by: Dave Chinner <dchinner@redhat.com>
16 Signed-off-by: Ben Myers <bpm@sgi.com>
17 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
18 ---
19  fs/xfs/xfs_vnodeops.c |    3 ++-
20  1 files changed, 2 insertions(+), 1 deletions(-)
22 diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c
23 index ce9268a..ee98d0b 100644
24 --- a/fs/xfs/xfs_vnodeops.c
25 +++ b/fs/xfs/xfs_vnodeops.c
26 @@ -131,7 +131,8 @@ xfs_readlink(
27                          __func__, (unsigned long long) ip->i_ino,
28                          (long long) pathlen);
29                 ASSERT(0);
30 -               return XFS_ERROR(EFSCORRUPTED);
31 +               error = XFS_ERROR(EFSCORRUPTED);
32 +               goto out;
33         }
34  
35  
36 -- 
37 1.7.7.4