Assumptions were made that if someone provided an address type ccw
or
s390 that it would occur only if using an enabled emulator. Turns out
that premise isn't necessarily true and it leads to libvirtd crashing
for hotplugs and qemu start errors for config paths.
These patches will make the checks prior to crashes or qemu process
starts in order to avoid the situation.
v1:
http://www.redhat.com/archives/libvir-list/2015-August/msg01043.html
Changes since v1...
... Implement a function to handle the s390-ccw check using STRPREFIX
instead of a mix of STRPREFIX and STREQLEN
... Create qemuCheckCCWS390AddressSupport to handle checking address
type if defined on entry to disk, controller, and rng device additions
whether through hotplug or config options.
NB: It doesn't seem network devices are afflicted, although perhaps
I read the code wrong. It seems for a network device there is/was
none of the set the default address if undefined code added.
John Ferlan (2):
qemu: Introduce qemuDomainMachineIsS390CCW
qemu: Need to check for machine.os when using ADDRESS_TYPE_CCW
src/qemu/qemu_command.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++--
src/qemu/qemu_command.h | 5 +++++
src/qemu/qemu_domain.c | 6 ++++++
src/qemu/qemu_domain.h | 1 +
src/qemu/qemu_hotplug.c | 24 +++++++++++++++------
5 files changed, 83 insertions(+), 8 deletions(-)