[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PULL 4/8] bus: do not unref the added child
From: |
Marc-André Lureau |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PULL 4/8] bus: do not unref the added child bus on realize |
Date: |
Wed, 13 Jun 2018 18:21:30 +0200 |
Hi
On Wed, Jun 13, 2018 at 6:05 PM, Paolo Bonzini <address@hidden> wrote:
> On 12/06/2018 12:44, Gerd Hoffmann wrote:
>>
>> When the parent bus removes the child property, it takes care of
>> removing the added reference, in object_finalize_child_property().
>>
>> Signed-off-by: Marc-André Lureau <address@hidden>
>> Message-id: address@hidden
>> Signed-off-by: Gerd Hoffmann <address@hidden>
>> ---
>> hw/core/bus.c | 1 -
>> 1 file changed, 1 deletion(-)
>>
>> diff --git a/hw/core/bus.c b/hw/core/bus.c
>> index 4651f24486..ad0c9df335 100644
>> --- a/hw/core/bus.c
>> +++ b/hw/core/bus.c
>> @@ -102,7 +102,6 @@ static void qbus_realize(BusState *bus, DeviceState
>> *parent, const char *name)
>> QLIST_INSERT_HEAD(&bus->parent->child_bus, bus, sibling);
>> bus->parent->num_child_bus++;
>> object_property_add_child(OBJECT(bus->parent), bus->name,
>> OBJECT(bus), NULL);
>> - object_unref(OBJECT(bus));
>
> This is wrong. object_finalize_child_property()'s unref balances the
> ref in object_property_add_child(). qbus_realize's unref balances the
> ref that was initially placed by object_new/object_initialize.
>
> So you're introducing a leak.
Oops, too bad you didn't review earlier. Hmm.. I vote for reverting
the 4 patches.
--
Marc-André Lureau
- [Qemu-arm] [PULL 0/8] Usb 20180612 patches, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 7/8] usb-hcd-xhci-test: add a test for ccid hotplug, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 8/8] usb-mtp: Return error on suspicious TYPE_DATA packet from initiator, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 6/8] usb-ccid: fix bus leak, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 1/8] usb: update docs, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 2/8] usb: correctly handle Zero Length Packets, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 3/8] usb/dev-mtp: Fix use of uninitialized values, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 4/8] bus: do not unref the added child bus on realize, Gerd Hoffmann, 2018/06/12
- [Qemu-arm] [PULL 5/8] object: fix OBJ_PROP_LINK_UNREF_ON_RELEASE ambivalence, Gerd Hoffmann, 2018/06/12
- Re: [Qemu-arm] [PULL 0/8] Usb 20180612 patches, Peter Maydell, 2018/06/12