[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [v2 3/3] hmp: fix MemdevList memory leak
From: |
address@hidden |
Subject: |
Re: [Qemu-devel] [v2 3/3] hmp: fix MemdevList memory leak |
Date: |
Mon, 18 Aug 2014 06:31:17 +0000 |
On Tue, 2014-08-12 at 12:00 +1000, Peter Crosthwaite wrote:
> On Mon, Aug 4, 2014 at 2:21 PM, Chen Fan <address@hidden> wrote:
> > the memdev_list in hmp_info_memdev() is never freed.
> > so we use existent method qapi_free_MemdevList() to free it.
> > and also we can use qapi_free_MemdevList() to replace list loops
> > to clean up the memdev list in error path.
> >
> > Signed-off-by: Chen Fan <address@hidden>
>
> I'm hazy on the subtleties of these QAPI stuffs. Round one review I
> was thinking pure C but your approach looks better than my suggestion.
>
> Reviewed-by: Peter Crosthwaite <address@hidden>
Thanks,
Chen
>
> > ---
> > hmp.c | 2 ++
> > numa.c | 9 ++-------
> > 2 files changed, 4 insertions(+), 7 deletions(-)
> >
> > diff --git a/hmp.c b/hmp.c
> > index ba40c75..40a90da 100644
> > --- a/hmp.c
> > +++ b/hmp.c
> > @@ -1715,4 +1715,6 @@ void hmp_info_memdev(Monitor *mon, const QDict *qdict)
> > }
> >
> > monitor_printf(mon, "\n");
> > +
> > + qapi_free_MemdevList(memdev_list);
> > }
> > diff --git a/numa.c b/numa.c
> > index a2b4bca..b3e140e 100644
> > --- a/numa.c
> > +++ b/numa.c
> > @@ -379,7 +379,7 @@ error:
> > MemdevList *qmp_query_memdev(Error **errp)
> > {
> > Object *obj;
> > - MemdevList *list = NULL, *m;
> > + MemdevList *list = NULL;
> >
> > obj = object_resolve_path("/objects", NULL);
> > if (obj == NULL) {
> > @@ -393,11 +393,6 @@ MemdevList *qmp_query_memdev(Error **errp)
> > return list;
> >
> > error:
> > - while (list) {
> > - m = list;
> > - list = list->next;
> > - g_free(m->value);
> > - g_free(m);
> > - }
> > + qapi_free_MemdevList(list);
> > return NULL;
> > }
> > --
> > 1.9.3
> >
> >