[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-trivial] [PATCH 21/29] hw/sh4/r2d.c: Fix memory leak spotted b
From: |
Peter Maydell |
Subject: |
Re: [Qemu-trivial] [PATCH 21/29] hw/sh4/r2d.c: Fix memory leak spotted by valgrind |
Date: |
Thu, 28 May 2015 13:46:43 +0100 |
On 28 May 2015 at 13:08, Shannon Zhao <address@hidden> wrote:
> From: Shannon Zhao <address@hidden>
>
> valgrind complains about:
> ==29844== 1,364 (104 direct, 1,260 indirect) bytes in 1 blocks are definitely
> lost in loss record 2,143 of 2,205
> ==29844== at 0x4C2845D: malloc (in
> /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
> ==29844== by 0x25096F: malloc_and_trace (vl.c:2556)
> ==29844== by 0x64C770E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
> ==29844== by 0x2C7CDB: qemu_extend_irqs (irq.c:55)
> ==29844== by 0x2C7D67: qemu_allocate_irqs (irq.c:64)
> ==29844== by 0x2167ED: r2d_fpga_init (r2d.c:191)
> ==29844== by 0x2169CC: r2d_init (r2d.c:263)
> ==29844== by 0x254D3A: main (vl.c:4249)
>
> Signed-off-by: Shannon Zhao <address@hidden>
> Signed-off-by: Shannon Zhao <address@hidden>
> ---
> hw/sh4/r2d.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/hw/sh4/r2d.c b/hw/sh4/r2d.c
> index 4221060..594c733 100644
> --- a/hw/sh4/r2d.c
> +++ b/hw/sh4/r2d.c
> @@ -287,6 +287,16 @@ static void r2d_init(MachineState *machine)
> sysbus_mmio_map(busdev, 1, 0x1400080c);
> mmio_ide_init_drives(dev, dinfo, NULL);
>
> + /* free unused irq */
> + qemu_free_irq(irq[CF_CD]);
> + qemu_free_irq(irq[KEY]);
> + qemu_free_irq(irq[RTC_A]);
> + qemu_free_irq(irq[RTC_T]);
> + qemu_free_irq(irq[SDCARD]);
> + qemu_free_irq(irq[EXT]);
> + qemu_free_irq(irq[TP]);
> + g_free(irq);
> +
Yuck. We should just save the irq pointer in some state structure
and g_free_irqs() it all in deinit.
-- PMM
- [Qemu-trivial] [PATCH 14/29] hw/mips/mips_int.c: Fix memory leak spotted by valgrind, (continued)
- [Qemu-trivial] [PATCH 14/29] hw/mips/mips_int.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 11/29] hw/ppc/mac_oldworld.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 22/29] hw/alpha/typhoon.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 19/29] hw/openrisc/pic_cpu.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 20/29] hw/unicore32/puv3.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 25/29] hw/arm/palm.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 26/29] hw/arm/spitz.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 24/29] hw/arm/omap_sx1.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 23/29] hw/arm/nseries.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 21/29] hw/sh4/r2d.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- Re: [Qemu-trivial] [PATCH 21/29] hw/sh4/r2d.c: Fix memory leak spotted by valgrind,
Peter Maydell <=
- [Qemu-trivial] [PATCH 29/29] hw/s390x/sclpcpu.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 27/29] hw/arm/tosa.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 28/29] hw/display/tc6393xb.c: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28
- [Qemu-trivial] [PATCH 03/29] hw/i386/pc: Fix memory leak spotted by valgrind, Shannon Zhao, 2015/05/28