Hi, This series looks at Eduardo suggestions from [1] and Thomas commit aff39be0ed97 to replace various object_initialize + qdev_set_parent_bus calls by sysbus_init_child_obj().
Important comment from Eduardo: It's possible, but we need a volunteer to review each hunk because the existing code might be (correctly) calling object_unref() (either immediately or when parent is finalized). I tried to split it enough to make the review process easier. Regards, Phil. [*] https://patchwork.ozlabs.org/patch/943333/#1953608 v1: https://lists.gnu.org/archive/html/qemu-devel/2019-02/msg05931.html Philippe Mathieu-Daudé (16): hw/ppc/pnv: Use object_initialize_child for correct reference counting hw/misc/macio: Use object_initialize_child for correct ref. counting hw/virtio: Use object_initialize_child for correct reference counting hw/arm/bcm2835: Use TYPE_PL011 instead of hardcoded string hw/arm/bcm2835: Use object_initialize() on PL011State hw/arm/bcm2835: Use object_initialize_child for correct ref. counting hw/arm/aspeed: Use object_initialize_child for correct ref. counting hw/arm: Use object_initialize_child for correct reference counting hw/mips: Use object_initialize() on MIPSCPSState hw/mips: Use object_initialize_child for correct reference counting hw/microblaze/zynqmp: Move the IPI state into the PMUSoC state hw/microblaze/zynqmp: Let the SoC manage the IPI devices hw/microblaze/zynqmp: Use object_initialize_child for correct ref. counting hw/microblaze/zynqmp: Use object_initialize_child for correct ref. counting hw/arm/mps2: Use object_initialize_child for correct reference counting hw/intc/nvic: Use object_initialize_child for correct reference counting hw/arm/aspeed.c | 6 +-- hw/arm/aspeed_soc.c | 50 +++++++++-------------- hw/arm/bcm2835_peripherals.c | 61 +++++++++++----------------- hw/arm/digic.c | 17 +++----- hw/arm/imx25_pdk.c | 5 +-- hw/arm/kzm.c | 5 +-- hw/arm/mps2-tz.c | 8 ++-- hw/arm/mps2.c | 8 ++-- hw/arm/raspi.c | 7 ++-- hw/arm/sabrelite.c | 5 +-- hw/arm/xlnx-zcu102.c | 5 +-- hw/arm/xlnx-zynqmp.c | 8 ++-- hw/intc/armv7m_nvic.c | 6 +-- hw/microblaze/xlnx-zynqmp-pmu.c | 45 ++++++++++---------- hw/mips/boston.c | 25 ++++++------ hw/mips/cps.c | 20 ++++----- hw/mips/mips_malta.c | 17 ++++---- hw/misc/macio/macio.c | 8 ++-- hw/ppc/pnv.c | 12 ++---- hw/virtio/virtio.c | 5 +-- include/hw/arm/bcm2835_peripherals.h | 3 +- 21 files changed, 140 insertions(+), 186 deletions(-) -- 2.20.1