Apologies if I'm missing something, I didn't look too closely
at this series,
however have you seen this thread?
http://www.redhat.com/archives/libvir-list/2016-May/msg01071.html I haven’t noticed
that some work has been done on that, thank you!
My understanding of the current code is that the cached
vioserial/ccw/pciaddrs
lists in qemu aren't actually required…they were at one point to handle
older qemu, but we dropped that support. Maybe you can pick up my
patches and
finish off dropping of pciaddrs and ccwaddrs? I suspect the pciaddrs cache in
bhyve can be dropped as well, I don't think it was ever strictly required, the
code just followed the qemu example
If we could do without the caching, it would
make the current code simpler.
There wouldn’t be those booleans in qemu_hotplug.c that remember whether
an address has to be deleted or not in case something fails. We could
delete qemuDomainReleaseDeviceAddress() and a few more functions.
I examined vioserial and pci addresses and it looks like
it could be done. However, I'm not an expert on qemu_hotplug yet
and this is where the interesting stuff happens with addresses,
so I am not entirely sure yet.
I also don't know what the plans are for device addresses in the future.
Perhaps there are some features that will require caching them.
I think that recalculation may change the current behavior of ccw addresses.
Function virDomainCCWAddressReleaseAddr() modifies addrs->next
only when the address being released was the address most recently
assigned.
Laine, you know a lot about PCI addresses and you also mentioned that
you want to modify them in the future. What do you think?
Martin, should I work on that instead?
Kind regards,
Tomasz