[PATCH v2 1/2] crypto: luks: fix tiny memory leak

Maxim Levitsky posted 2 patches 5 years, 4 months ago
Maintainers: Max Reitz <mreitz@redhat.com>, Kevin Wolf <kwolf@redhat.com>
There is a newer version of this series
[PATCH v2 1/2] crypto: luks: fix tiny memory leak
Posted by Maxim Levitsky 5 years, 4 months ago
In the case when underlying block device doesn't support the
bdrv_co_delete_file interface, an 'Error' wasn't freed.

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
---
 block/crypto.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/block/crypto.c b/block/crypto.c
index 0807557763..9b61fd4aa8 100644
--- a/block/crypto.c
+++ b/block/crypto.c
@@ -736,6 +736,7 @@ fail:
         if ((r_del < 0) && (r_del != -ENOTSUP)) {
             error_report_err(local_delete_err);
         }
+        error_free(local_delete_err);
     }
 
     bdrv_unref(bs);
-- 
2.26.2


Re: [PATCH v2 1/2] crypto: luks: fix tiny memory leak
Posted by Alberto Garcia 5 years, 3 months ago
On Sun 11 Oct 2020 12:21:35 PM CEST, Maxim Levitsky wrote:
> In the case when underlying block device doesn't support the
> bdrv_co_delete_file interface, an 'Error' wasn't freed.
>
> Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
> ---
>  block/crypto.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/block/crypto.c b/block/crypto.c
> index 0807557763..9b61fd4aa8 100644
> --- a/block/crypto.c
> +++ b/block/crypto.c
> @@ -736,6 +736,7 @@ fail:
>          if ((r_del < 0) && (r_del != -ENOTSUP)) {
>              error_report_err(local_delete_err);
>          }
> +        error_free(local_delete_err);
>      }

error_report_err() already calls error_free().

Berto

Re: [PATCH v2 1/2] crypto: luks: fix tiny memory leak
Posted by Maxim Levitsky 5 years, 3 months ago
On Tue, 2020-10-13 at 14:26 +0200, Alberto Garcia wrote:
> On Sun 11 Oct 2020 12:21:35 PM CEST, Maxim Levitsky wrote:
> > In the case when underlying block device doesn't support the
> > bdrv_co_delete_file interface, an 'Error' wasn't freed.
> > 
> > Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
> > ---
> >  block/crypto.c | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/block/crypto.c b/block/crypto.c
> > index 0807557763..9b61fd4aa8 100644
> > --- a/block/crypto.c
> > +++ b/block/crypto.c
> > @@ -736,6 +736,7 @@ fail:
> >          if ((r_del < 0) && (r_del != -ENOTSUP)) {
> >              error_report_err(local_delete_err);
> >          }
> > +        error_free(local_delete_err);
> >      }
> 
> error_report_err() already calls error_free().

Thanks. I didn't knew this.
Will send V3 soon.

Best regards,
	Maxim Levitsky
> 
> Berto
>