[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-trivial] [PATCH 2/3] hw/ide/pci: Fix memory leak
From: |
Shannon Zhao |
Subject: |
Re: [Qemu-trivial] [PATCH 2/3] hw/ide/pci: Fix memory leak |
Date: |
Tue, 26 May 2015 09:24:44 +0800 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 |
On 2015/5/25 21:12, Paolo Bonzini wrote:
>
>
> On 25/05/2015 10:37, Shannon Zhao wrote:
>> From: Shannon Zhao <address@hidden>
>>
>> valgrind complains about:
>> ==16447== 16 bytes in 2 blocks are definitely lost in loss record 1,304 of
>> 3,310
>> ==16447== at 0x4C2845D: malloc (in
>> /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
>> ==16447== by 0x2E4FD7: malloc_and_trace (vl.c:2546)
>> ==16447== by 0x64C770E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
>> ==16447== by 0x36FB47: qemu_extend_irqs (irq.c:55)
>> ==16447== by 0x36FBD3: qemu_allocate_irqs (irq.c:64)
>> ==16447== by 0x3B4B44: bmdma_init (pci.c:464)
>> ==16447== by 0x3B547B: pci_piix_init_ports (piix.c:144)
>> ==16447== by 0x3B55D2: pci_piix_ide_realize (piix.c:164)
>> ==16447== by 0x3EAEC6: pci_qdev_realize (pci.c:1790)
>> ==16447== by 0x36C685: device_set_realized (qdev.c:1058)
>> ==16447== by 0x47179E: property_set_bool (object.c:1514)
>> ==16447== by 0x470098: object_property_set (object.c:837)
>>
>> Signed-off-by: Shannon Zhao <address@hidden>
>> Signed-off-by: Shannon Zhao <address@hidden>
>> ---
>> hw/ide/pci.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/hw/ide/pci.c b/hw/ide/pci.c
>> index 1b3d1c1..c5c4441 100644
>> --- a/hw/ide/pci.c
>> +++ b/hw/ide/pci.c
>> @@ -464,6 +464,7 @@ void bmdma_init(IDEBus *bus, BMDMAState *bm, PCIIDEState
>> *d)
>> irq = qemu_allocate_irqs(bmdma_irq, bm, 1);
>> bus->irq = *irq;
>> bm->pci_dev = d;
>> + g_free(irq);
>> }
>
> You can use qemu_allocate_irq here:
>
> bus->irq = qemu_allocate_irq(bmdma_irq, bm, 0);
>
Ok, I see. Will replace it. Thanks.
> Paolo
>
>> static const TypeInfo pci_ide_type_info = {
>>
>
>
--
Shannon