xfs
[Top] [All Lists]

Re: [PATCH] xfs: Fix missing xfs_iunlock() on error recovery path in xfs

To: Jan Kara <jack@xxxxxxx>
Subject: Re: [PATCH] xfs: Fix missing xfs_iunlock() on error recovery path in xfs_readlink()
From: Ben Myers <bpm@xxxxxxx>
Date: Wed, 11 Jan 2012 13:13:30 -0600
Cc: Alex Elder <elder@xxxxxxxxxx>, xfs@xxxxxxxxxxx, stable@xxxxxxxxxx, Carlos Maiolino <cmaiolino@xxxxxxxxxx>
In-reply-to: <1326307930-21251-1-git-send-email-jack@xxxxxxx>
References: <1326307930-21251-1-git-send-email-jack@xxxxxxx>
User-agent: Mutt/1.5.18 (2008-05-17)
On Wed, Jan 11, 2012 at 07:52:10PM +0100, Jan Kara wrote:
> 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: stable@xxxxxxxxxx
> CC: Carlos Maiolino <cmaiolino@xxxxxxxxxx>
> Signed-off-by: Jan Kara <jack@xxxxxxx>
> ---
>  fs/xfs/xfs_vnodeops.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
> 
> diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c
> index f2fea86..6156cd6 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;
>       }

Looks good to me.

Reviewed-by: Ben Myers <bpm@xxxxxxx>

<Prev in Thread] Current Thread [Next in Thread>