Re: [PATCH] btrfs: Fix a memory leak in btrfs_ioctl_balance()

From: David Sterba
Date: Thu Apr 21 2022 - 09:35:03 EST


On Thu, Apr 21, 2022 at 02:34:47PM +0300, Nikolay Borisov wrote:
> <snip>
>
> >
> > Actually to simplify further:
> >
> > diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
> > index 7a6974e877f4..bbda55d41a06 100644
> > --- a/fs/btrfs/ioctl.c
> > +++ b/fs/btrfs/ioctl.c
> > @@ -4353,6 +4353,7 @@ static long btrfs_ioctl_balance(struct file *file,
> > void __user *arg)
> >         bargs = memdup_user(arg, sizeof(*bargs));
> >         if (IS_ERR(bargs)) {
> >                 ret = PTR_ERR(bargs);
> > +               bargs = NULL;
> >                 goto out;
> >         }
>
> Unf, this also leads to the double free ...

Please send me an incremental diff that I can fold to the patch, thanks.