From: Tomasz Flendrich <Darge(a)users.noreply.github.com>
These patches delete the caching of pci, virtioSerial and ccw address sets.
I am deleting them, because they can be recalculated from the domain definition,
and there's no point in keeping redundant data, especially because handling
a persistent cache of addresses required using functions that released addresses.
These functions aren't useful anymore, so they are dropped too.
I know that USB addresses were added and that they are cached now. I am sure
that they can be calculated on demand too though.
If this gets accepted, I will rebase the other patches that depend on this one,
making functions less dependant on qemu, and removing the code duplication.
Changes in v2:
* I rebased it, because there were some changes that added a usb address set.
* virDomainReleaseDeviceAddress is no longer deleted, because it's used
for usb addresses. It also means that in qemu_hotplug.c, this function's
calls are not deleted anymore.
* In qemu_hotplug.c, in one place, virDomainPCIAddressSetFree() was previously
called after the "error:" label. I moved it to the "cleanup:", so
the address
set is freed even if an error occurs.
* Add one missing free of pci address set, in qemuDomainAttachNetDevice().
Tomasz Flendrich (10):
add virDomainVirtioSerialAddrSetCreateFromDomain
qemu_hotplug: generate vioserial address list on demand
qemu: remove vioserialaddrs caching
Add qemuDomainCCWAddrSetCreateFromDomain
qemu_hotplug: generate ccw address list on demand
qemu: remove ccwaddrs caching
add qemuDomainPCIAddrSetCreateFromDomain
qemu_hotplug: generate pci address list on demand
qemu: remove pciaddrs caching
Remove unused functions that release addresses
src/conf/domain_addr.c | 131 +++++++++---------------------------
src/conf/domain_addr.h | 19 +-----
src/libvirt_private.syms | 4 +-
src/qemu/qemu_domain.c | 3 -
src/qemu/qemu_domain.h | 3 -
src/qemu/qemu_domain_address.c | 147 ++++++++++++++++++++---------------------
src/qemu/qemu_domain_address.h | 9 +++
src/qemu/qemu_hotplug.c | 111 ++++++++++++++++++++++++-------
8 files changed, 201 insertions(+), 226 deletions(-)
--
2.7.4 (Apple Git-66)