All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cornelia Huck <cohuck@redhat.com>
To: Gan Qixin <ganqixin@huawei.com>
Cc: peter.maydell@linaro.org, thuth@redhat.com,
	zhang.zhanghailiang@huawei.com,
	David Hildenbrand <david@redhat.com>,
	qemu-trivial@nongnu.org,
	Richard Henderson <richard.henderson@linaro.org>,
	qemu-devel@nongnu.org, qemu-s390x@nongnu.org,
	Euler Robot <euler.robot@huawei.com>,
	kuhn.chenqun@huawei.com, david@gibson.dropbear.id.au
Subject: Re: [PATCH 3/3] s390x/cpu: Use timer_free() in the finalize function to avoid memleaks
Date: Fri, 4 Dec 2020 09:36:59 +0100	[thread overview]
Message-ID: <20201204093659.349314af.cohuck@redhat.com> (raw)
In-Reply-To: <20201204081209.360524-4-ganqixin@huawei.com>

On Fri, 4 Dec 2020 16:12:09 +0800
Gan Qixin <ganqixin@huawei.com> wrote:

> When running device-introspect-test, a memory leak occurred in the s390_cpu_initfn
> function, this patch use timer_free() in the finalize function to fix it.
> 
> ASAN shows memory leak stack:
> 
> Direct leak of 3552 byte(s) in 74 object(s) allocated from:
>     #0 0xfffeb3d4e1f0 in __interceptor_calloc (/lib64/libasan.so.5+0xee1f0)
>     #1 0xfffeb36e6800 in g_malloc0 (/lib64/libglib-2.0.so.0+0x56800)
>     #2 0xaaad51a8f9c4 in timer_new_full qemu/include/qemu/timer.h:523
>     #3 0xaaad51a8f9c4 in timer_new qemu/include/qemu/timer.h:544
>     #4 0xaaad51a8f9c4 in timer_new_ns qemu/include/qemu/timer.h:562
>     #5 0xaaad51a8f9c4 in s390_cpu_initfn qemu/target/s390x/cpu.c:304
>     #6 0xaaad51e00f58 in object_init_with_type qemu/qom/object.c:371
>     #7 0xaaad51e0406c in object_initialize_with_type qemu/qom/object.c:515
>     #8 0xaaad51e042e0 in object_new_with_type qemu/qom/object.c:729
>     #9 0xaaad51e3ff40 in qmp_device_list_properties qemu/qom/qom-qmp-cmds.c:153
>     #10 0xaaad51910518 in qdev_device_help qemu/softmmu/qdev-monitor.c:283
>     #11 0xaaad51911918 in qmp_device_add qemu/softmmu/qdev-monitor.c:801
>     #12 0xaaad51911e48 in hmp_device_add qemu/softmmu/qdev-monitor.c:916
> 
> Reported-by: Euler Robot <euler.robot@huawei.com>
> Signed-off-by: Gan Qixin <ganqixin@huawei.com>
> ---
> Cc: Thomas Huth <thuth@redhat.com>

[Adding missing maintainers. How did you build the cc: list?]

> ---
>  target/s390x/cpu.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c
> index 7b66718c44..8a734c2f8c 100644
> --- a/target/s390x/cpu.c
> +++ b/target/s390x/cpu.c
> @@ -313,6 +313,11 @@ static void s390_cpu_finalize(Object *obj)
>  #if !defined(CONFIG_USER_ONLY)
>      S390CPU *cpu = S390_CPU(obj);
>  
> +    timer_del(cpu->env.tod_timer);
> +    timer_free(cpu->env.tod_timer);
> +    timer_del(cpu->env.cpu_timer);
> +    timer_free(cpu->env.cpu_timer);
> +
>      qemu_unregister_reset(s390_cpu_machine_reset_cb, cpu);
>      g_free(cpu->irqstate);
>  #endif

Looks sane at first glance.



  reply	other threads:[~2020-12-04  8:38 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-04  8:12 [PATCH 0/3] Fix some memleaks caused by timer_new_ns Gan Qixin
2020-12-04  8:12 ` [PATCH 1/3] pl031: Use timer_free() in the finalize function to avoid memleaks Gan Qixin
2020-12-15 13:42   ` Peter Maydell
2020-12-04  8:12 ` [PATCH 2/3] misc/mos6522: Use timer_free() in the finalize function to avoid memleak Gan Qixin
2020-12-05  9:56   ` David Gibson
2020-12-04  8:12 ` [PATCH 3/3] s390x/cpu: Use timer_free() in the finalize function to avoid memleaks Gan Qixin
2020-12-04  8:36   ` Cornelia Huck [this message]
2020-12-04  9:30     ` David Hildenbrand
2020-12-07  8:10     ` ganqixin
2020-12-08 16:10   ` Cornelia Huck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201204093659.349314af.cohuck@redhat.com \
    --to=cohuck@redhat.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=david@redhat.com \
    --cc=euler.robot@huawei.com \
    --cc=ganqixin@huawei.com \
    --cc=kuhn.chenqun@huawei.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=qemu-trivial@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=thuth@redhat.com \
    --cc=zhang.zhanghailiang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.