[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-arm] [PATCH v2 0/4] qdev: remove all remaining cannot_destroy_with
From: |
Laurent Vivier |
Subject: |
[Qemu-arm] [PATCH v2 0/4] qdev: remove all remaining cannot_destroy_with_object_finalize_yet |
Date: |
Fri, 14 Apr 2017 10:37:13 +0200 |
This series removes all the remaining uses of
cannot_destroy_with_object_finalize_yet to finally remove
the flag itself.
The ARM patch has already been sent alone and reviewed by Markus.
I have tested the ppc one on ppc64 machine with KVM and using
QDM device-list-properties command.
For the versatile one, the flag allowed to workaround a problem
in the bus unparent function: the bus unparent is trying to
unparent all the children of the bus. To do that, it has a list
of the children of the bus, and calls object_unparent() for each
child, and object_unparent() calls object_property_del_child() if
obj->parent is not NULL. As qdev_set_parent_bus() set only
parent_bus and the list of children, parent is NULL and the child
is never deleted. We can avoid the problem by moving the
qdev_set_parent_bus() to the realize part.
I've tested all the changes with "make check" (including
device-introspect-test). I've booted a versatilepb machine
with a 3.16.0-4 debian installer kernel.
Laurent Vivier (4):
arm: remove remaining cannot_destroy_with_object_finalize_yet
ppc: remove cannot_destroy_with_object_finalize_yet
versatile: remove cannot_destroy_with_object_finalize_yet
qdev: remove cannot_destroy_with_object_finalize_yet
hw/arm/allwinner-a10.c | 6 ------
hw/arm/bcm2836.c | 6 ------
hw/arm/digic.c | 6 ------
hw/arm/fsl-imx25.c | 5 -----
hw/arm/fsl-imx31.c | 5 -----
hw/arm/fsl-imx6.c | 5 -----
hw/arm/xlnx-zynqmp.c | 6 ------
hw/pci-host/versatile.c | 35 ++++++++++++-----------------------
include/hw/qdev-core.h | 13 -------------
qmp.c | 5 -----
target/ppc/kvm.c | 10 ----------
11 files changed, 12 insertions(+), 90 deletions(-)
--
2.9.3
- [Qemu-arm] [PATCH v2 0/4] qdev: remove all remaining cannot_destroy_with_object_finalize_yet,
Laurent Vivier <=
- [Qemu-arm] [PATCH v2 1/4] arm: remove remaining cannot_destroy_with_object_finalize_yet, Laurent Vivier, 2017/04/14
- [Qemu-arm] [PATCH v2 2/4] ppc: remove cannot_destroy_with_object_finalize_yet, Laurent Vivier, 2017/04/14
- [Qemu-arm] [PATCH v2 3/4] versatile: remove cannot_destroy_with_object_finalize_yet, Laurent Vivier, 2017/04/14
- [Qemu-arm] [PATCH v2 4/4] qdev: remove cannot_destroy_with_object_finalize_yet, Laurent Vivier, 2017/04/14
- Re: [Qemu-arm] [PATCH v2 0/4] qdev: remove all remaining cannot_destroy_with_object_finalize_yet, Peter Maydell, 2017/04/20