
On Thu, Jan 25, 2018 at 05:45:51PM +0100, Andrea Bolognani wrote:
Basically all existing guest types, regardless of the architectur, get both a USB controller and a virtio memory balloon by default.
s390 guests are an exception, for the very good reason that they don't support USB at all; the other exception is aarch64/virt guests, but in the latter case isn't a compelling reason for them to deviate from the widely adopted convention, especially since:
* x86/q35 guests, which aarch64/virt guests are for the most part identical to, add these devices by default; * it's trivial to opt out of both default devices by setting model='none';
Except that this requires code changes to downstream applications to actually do this now, otherwise guests that they were expecting to not have USB for, now suddenly get it.
* higher level applications such as Nova expect at least the USB controller to be present.
This doesn't really help nova in practice, because it needs to operate correctly with pre-existing libbvirt releases, and even on x86 it should not be relying on the default USB1 controller, but rather adding a USB2 or USB3 controller.
So add it by default for newly-defined guests. Existing guests will, of course, be left unchanged.
That is still harmful, because an existing mgmt application release that runs on new libvirt has its guest configs suddenly changed, especially if using transient guests.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1538637
I consider that bug wontfix. It is just exchanging one set of problems for a different set of problems. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|