[PATCH] xfs: fix a memory leak in xfs_get_acl on error

Dave Chinner david at fromorbit.com
Wed Mar 30 17:05:15 CDT 2016


On Wed, Mar 30, 2016 at 10:41:20PM +0200, Mateusz Guzik wrote:
> On Thu, Mar 31, 2016 at 07:26:55AM +1100, Dave Chinner wrote:
> > On Wed, Mar 30, 2016 at 04:35:07PM +0200, Mateusz Guzik wrote:
> > > Signed-off-by: Mateusz Guzik <mguzik at redhat.com>
> > > ---
> > >  fs/xfs/xfs_acl.c | 3 ++-
> > >  1 file changed, 2 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/fs/xfs/xfs_acl.c b/fs/xfs/xfs_acl.c
> > > index 2dad2b5..ce10c4c 100644
> > > --- a/fs/xfs/xfs_acl.c
> > > +++ b/fs/xfs/xfs_acl.c
> > > @@ -162,10 +162,11 @@ xfs_get_acl(struct inode *inode, int type)
> > >  		 */
> > >  		if (error != -ENOATTR)
> > >  			acl = ERR_PTR(error);
> > > -		return acl;
> > > +		goto out;
> > >  	}
> > >  
> > >  	acl = xfs_acl_from_disk(xfs_acl, len, XFS_ACL_MAX_ENTRIES(ip->i_mount));
> > > +out:
> > >  	kmem_free(xfs_acl);
> > >  	return acl;
> > >  }
> > 
> > Hi Mateusz,
> > 
> > It looks like we've already fixed this problem - can you check
> > 4.6-rc1 and if the leak is still there post an updated patch?
> > 
> 
> The patch which introuced the bug is not present in 4.6-rc1.
> 
> The patch is against next-20160330, the bug was introduced in:
> 
> commit ae4e84be32ef6fdf97f10852778597b1a2be3cba
> Author: Andreas Gruenbacher <agruenba at redhat.com>
> Date:   Thu Mar 24 14:38:37 2016 +0100
> 
>     posix_acl: Inode acl caching fixes
> 
> Apologies if this should have been handled differently (by replying to the
> original patch?)

You need to put this information in the patch description so we
don't have to guess at what it applies to. Most maintainers assume
that if it is not mentioned, the patch should apply to their current
top of tree....

Cheers,

Dave.
-- 
Dave Chinner
david at fromorbit.com



More information about the xfs mailing list