[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-trivial] [PATCH v2 05/13] hw/intc/exynos4210_gic.c: Fix memory lea
From: |
Shannon Zhao |
Subject: |
[Qemu-trivial] [PATCH v2 05/13] hw/intc/exynos4210_gic.c: Fix memory leak by adjusting order |
Date: |
Fri, 29 May 2015 13:27:03 +0800 |
From: Shannon Zhao <address@hidden>
valgrind complains about:
==17211== 784 (288 direct, 496 indirect) bytes in 4 blocks are definitely lost
in loss record 3,018 of 3,201
==17211== at 0x4C2845D: malloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==17211== by 0x35478F: malloc_and_trace (vl.c:2556)
==17211== by 0x64C770E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
==17211== by 0x5148DD: object_new_with_type (object.c:428)
==17211== by 0x514939: object_new (object.c:439)
==17211== by 0x3EDA38: qemu_allocate_irq (irq.c:71)
==17211== by 0x3EDC2D: qemu_irq_split (irq.c:119)
==17211== by 0x23D231: exynos4210_init_board_irqs (exynos4210_gic.c:216)
==17211== by 0x293B00: exynos4210_init (exynos4210.c:250)
==17211== by 0x27915A: exynos4_boards_init_common (exynos4_boards.c:127)
==17211== by 0x2791D9: smdkc210_init (exynos4_boards.c:140)
==17211== by 0x358B5A: main (vl.c:4249)
Signed-off-by: Shannon Zhao <address@hidden>
Signed-off-by: Shannon Zhao <address@hidden>
---
hw/intc/exynos4210_gic.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/hw/intc/exynos4210_gic.c b/hw/intc/exynos4210_gic.c
index 0590d5d..b2a4950 100644
--- a/hw/intc/exynos4210_gic.c
+++ b/hw/intc/exynos4210_gic.c
@@ -213,9 +213,6 @@ void exynos4210_init_board_irqs(Exynos4210Irq *s)
uint32_t grp, bit, irq_id, n;
for (n = 0; n < EXYNOS4210_MAX_EXT_COMBINER_IN_IRQ; n++) {
- s->board_irqs[n] = qemu_irq_split(s->int_combiner_irq[n],
- s->ext_combiner_irq[n]);
-
irq_id = 0;
if (n == EXYNOS4210_COMBINER_GET_IRQ_NUM(1, 4) ||
n == EXYNOS4210_COMBINER_GET_IRQ_NUM(12, 4)) {
@@ -230,8 +227,10 @@ void exynos4210_init_board_irqs(Exynos4210Irq *s)
if (irq_id) {
s->board_irqs[n] = qemu_irq_split(s->int_combiner_irq[n],
s->ext_gic_irq[irq_id-32]);
+ } else {
+ s->board_irqs[n] = qemu_irq_split(s->int_combiner_irq[n],
+ s->ext_combiner_irq[n]);
}
-
}
for (; n < EXYNOS4210_MAX_INT_COMBINER_IN_IRQ; n++) {
/* these IDs are passed to Internal Combiner and External GIC */
--
2.0.4
- [Qemu-trivial] [PATCH v2 00/13] use qemu_allocate_irq not _irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 02/13] hw/isa/lpc_ich9.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 03/13] hw/isa/i82378.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 01/13] hw/i386/pc: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 10/13] hw/unicore32/puv3.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 09/13] hw/lm32/milkymist.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 11/13] hw/alpha/typhoon.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 05/13] hw/intc/exynos4210_gic.c: Fix memory leak by adjusting order,
Shannon Zhao <=
- [Qemu-trivial] [PATCH v2 06/13] hw/sparc/sun4m.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 07/13] hw/ppc/prep.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 04/13] hw/timer/arm_timer.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 12/13] hw/arm/nseries.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 08/13] hw/lm32/lm32_boards.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- [Qemu-trivial] [PATCH v2 13/13] hw/display/tc6393xb.c: Fix misusing qemu_allocate_irqs for single irq, Shannon Zhao, 2015/05/29
- Re: [Qemu-trivial] [PATCH v2 00/13] use qemu_allocate_irq not _irqs for single irq, Michael Tokarev, 2015/05/30