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: Alex Elder <elder@xxxxxxxxxxxxx>
Date: Wed, 11 Jan 2012 12:30:23 -0800
Cc: Alex Elder <elder@xxxxxxxxxx>, xfs@xxxxxxxxxxx, Ben Myers <bpm@xxxxxxx>, stable@xxxxxxxxxx, Carlos Maiolino <cmaiolino@xxxxxxxxxx>
Dkim-signature: v=1; a=rsa-sha1; c=relaxed; d=dreamhost.com; h= message-id:subject:from:reply-to:to:cc:in-reply-to:references :content-type:date:mime-version:content-transfer-encoding; s= dreamhost.com; bh=UVgHFkwvv0mkDvROmURC76DHSO8=; b=LteogPmgAW/RFl yzcR8u0Qcc1neLcFs5c0crUs/+xh1gl3s2480HWKDWTYpgMg4pBrsu/9RZGzxQI+ 27rM9nPW5WwoTnIdhQJPk50pkY1Pz0GLMD2DAQyTMZLrSoTn5H0lgPi9U8cXHBxb AtJv71oKbySLSBM+qPiaN4z+uTqMY=
Domainkey-signature: a=rsa-sha1; c=nofws; d=dreamhost.com; h=message-id :subject:from:reply-to:to:cc:in-reply-to:references:content-type :date:mime-version:content-transfer-encoding; q=dns; s= dreamhost.com; b=SPvJm7QifeoYJ5P9YVbSVAQA8/BPPUJxloJiujjhgxOkswl qIbVPYbMyvYEfAbkI4evFJw/yzUOgXuEijymuv0IW6eh49lr5ZOwXO6SAD2ZddXB +qLN/OPRD9FNGWm65TFUcUQNZHXRdoHCtcd/VBgqqeC6QqeCR0vuOPE1kP6Y=
In-reply-to: <1326307930-21251-1-git-send-email-jack@xxxxxxx>
References: <1326307930-21251-1-git-send-email-jack@xxxxxxx>
Reply-to: elder@xxxxxxxxxxxxx
On Wed, 2012-01-11 at 19:52 +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.

Whoops.  Sorry I didn't catch that.  Your fix looks good.

Reviewed-by: Alex Elder <elder@xxxxxxxxxx>

> 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;
>       }
>  
> 



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