[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/6] hw/arm: Use sysbus_init_child_obj for corre
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-devel] [PATCH 3/6] hw/arm: Use sysbus_init_child_obj for correct reference counting |
Date: |
Mon, 12 Aug 2019 14:14:11 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 |
On 7/29/19 3:03 PM, Peter Maydell wrote:
> On Mon, 1 Jul 2019 at 13:31, Philippe Mathieu-Daudé <address@hidden> wrote:
>>
>> As explained in commit aff39be0ed97:
>>
>> Both functions, object_initialize() and object_property_add_child()
>> increase the reference counter of the new object, so one of the
>> references has to be dropped afterwards to get the reference
>> counting right. Otherwise the child object will not be properly
>> cleaned up when the parent gets destroyed.
>> Thus let's use now object_initialize_child() instead to get the
>> reference counting here right.
>>
>> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
>> ---
>> hw/arm/exynos4_boards.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/hw/arm/exynos4_boards.c b/hw/arm/exynos4_boards.c
>> index ac0b0dc2a9..5dd53d2a23 100644
>> --- a/hw/arm/exynos4_boards.c
>> +++ b/hw/arm/exynos4_boards.c
>> @@ -129,8 +129,8 @@ exynos4_boards_init_common(MachineState *machine,
>> exynos4_boards_init_ram(s, get_system_memory(),
>> exynos4_board_ram_size[board_type]);
>>
>> - object_initialize(&s->soc, sizeof(s->soc), TYPE_EXYNOS4210_SOC);
>> - qdev_set_parent_bus(DEVICE(&s->soc), sysbus_get_default());
>> + sysbus_init_child_obj(OBJECT(machine), "soc",
>> + &s->soc, sizeof(s->soc), TYPE_EXYNOS4210_SOC);
>> object_property_set_bool(OBJECT(&s->soc), true, "realized",
>> &error_fatal);
>
> I suspect the code change here is correct but it doesn't seem
> to match the commit message -- the old code is not calling
> object_property_add_child() at all, and the new code does not
> call object_initialize_child()...
OK, will improve, thanks!
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-devel] [PATCH 3/6] hw/arm: Use sysbus_init_child_obj for correct reference counting,
Philippe Mathieu-Daudé <=