On Wed, Sep 07, 2016 at 05:52:02PM +0200, Peter Krempa wrote: > On Wed, Sep 07, 2016 at 16:13:57 +0100, Daniel Berrange wrote: > > On Wed, Sep 07, 2016 at 05:10:01PM +0200, Peter Krempa wrote: > > > On Wed, Aug 24, 2016 at 00:20:42 +0200, Ján Tomko wrote: > > > > https://bugzilla.redhat.com/show_bug.cgi?id=1227354 > > [...] > > > > Obviously making the user responsible for correct setting is much > > > easier. > > > > > > Sigh. It'd be great if somebody else could also state their opinion on > > > this. I can't say that I'm a big fan of this approach but it looks like > > > as if it would be the only sensible one. > > > > I tend to agree. I'd be incredibly happy if we didn't add any of this to > > the XML and would simply "do the best thing" automatically. > > > > I'm particularly not a fan of adding something "just in case there is a > > bug" > > Yep, that's why I don't see a reason for using --disable-modern in > libvirt. It does not have any value besides working around "possible bugs". > > On the other hand, I'm kind of worried that with "--disable-legacy" we > are entering the domain of policy decisions as it's uncertain to me > whether: > * Enabling it would break guests with very old drivers. > * Guest firmware actually supports the modern mode (both ovmf and bios) > * other possible caveats that I can't think of right now > > In such case we'd need to expose a knob to set it, but I'd prefer > dropping the possibility to use legacy mode only since it's of no value. We could take a completely different approach to this based on the model. Effectively virtio-1.0 with disable-legacy is a completely separate hardware from the original virtio-0.9, with or without disable-modern. You even get a completely different PCI ID with disable-legacy set. So we could in fact represent this in the XML as a different model called "virtio1.0", and remap that to virtio+disable-legacy in the QEMU argv. This is in fact what we've done with naming in libosinfo already, due to the fact it has different PCI IDs and so is logically a different device. IOW, <sound model="virtio"/> == QEMU virtio <sound model="virtio1.0"/> == QEMU virtio + disable-legacy and explicitly don't provide any disable-modern flag mapping, since there is no compelling use case for that. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list