Now that a memory region's owner is used in the QOM tree, there is no need to use memory_region_destroy explicitly. The last reference to keep a region alive will disappear simply when the parent is finalized and destroys all its properties.
Paolo Paolo Bonzini (9): qom: object: delete properties before calling instance_finalize qom: object: move unparenting to the child property's release callback sysbus: remove unused function sysbus_del_io vga: do not dynamically allocate chain4_alias nic: do not destroy memory regions in cleanup functions ioport: split deletion and destruction memory: convert memory_region_destroy to object_unparent memory: remove memory_region_destroy tpm_tis: remove instance_finalize callback backends/hostmem.c | 10 ---------- docs/memory.txt | 15 ++++++++++----- hw/audio/ac97.c | 9 --------- hw/audio/es1370.c | 8 -------- hw/audio/intel-hda.c | 1 - hw/block/nvme.c | 1 - hw/block/pflash_cfi01.c | 1 - hw/block/pflash_cfi02.c | 1 - hw/char/serial-pci.c | 3 --- hw/core/sysbus.c | 5 ----- hw/display/vga.c | 24 ++++++++++-------------- hw/display/vga_int.h | 3 ++- hw/i386/kvm/pci-assign.c | 8 -------- hw/i386/kvmvapic.c | 2 +- hw/ide/ahci.c | 2 -- hw/ide/cmd646.c | 5 ----- hw/ide/piix.c | 3 --- hw/ide/via.c | 3 --- hw/ipack/tpci200.c | 13 ------------- hw/mips/gt64xxx_pci.c | 2 +- hw/misc/ivshmem.c | 3 --- hw/misc/omap_gpmc.c | 2 +- hw/misc/pci-testdev.c | 2 -- hw/misc/vfio.c | 11 ++--------- hw/net/dp8393x.c | 3 --- hw/net/e1000.c | 2 -- hw/net/eepro100.c | 3 --- hw/net/mcf_fec.c | 3 --- hw/net/ne2000.c | 1 - hw/net/pcnet-pci.c | 2 -- hw/net/rtl8139.c | 2 -- hw/net/stellaris_enet.c | 8 -------- hw/net/vmxnet3.c | 4 ---- hw/pci-bridge/pci_bridge_dev.c | 2 -- hw/pci/msix.c | 4 ---- hw/pci/pci.c | 2 -- hw/pci/pci_bridge.c | 8 -------- hw/pci/pcie_host.c | 1 - hw/pci/shpc.c | 1 - hw/scsi/esp-pci.c | 1 - hw/scsi/lsi53c895a.c | 10 ---------- hw/scsi/megasas.c | 3 --- hw/scsi/vmw_pvscsi.c | 3 --- hw/tpm/tpm_tis.c | 9 --------- hw/usb/hcd-uhci.c | 8 -------- hw/virtio/virtio-pci.c | 3 --- hw/watchdog/wdt_i6300esb.c | 8 -------- hw/xen/xen_pt.c | 20 -------------------- hw/xen/xen_pt_msi.c | 2 -- include/exec/memory.h | 9 --------- include/hw/sysbus.h | 1 - ioport.c | 11 ++++++++--- memory.c | 6 ------ qom/object.c | 16 +++++----------- 54 files changed, 40 insertions(+), 253 deletions(-) -- 1.8.3.1