[libvirt] [PATCHv5 00/13] qemu: allow disabling certain virtio revisions

Cornelia Huck cornelia.huck at de.ibm.com
Tue Sep 20 08:50:33 UTC 2016


On Mon, 19 Sep 2016 22:07:13 +0300
"Michael S. Tsirkin" <mst at redhat.com> wrote:

> On Wed, Sep 07, 2016 at 09:38:04PM +0200, Sascha Silbe wrote:
> > Dear Laine,
> > 
> > Laine Stump <laine at laine.org> writes:
> > 
> > > On 09/07/2016 02:35 PM, Sascha Silbe wrote:
> > >> "Daniel P. Berrange" <berrange at redhat.com> writes:
> > >> [...]
> > >>>       <sound model="virtio"/>     == QEMU virtio
> > >>>       <sound model="virtio1.0"/>  == QEMU virtio + disable-legacy
> > >> What would this do for devices using the virtio-ccw transport?
> > >
> > >  From libvirt's point of view, the option "disable-legacy=on" would be 
> > > added to the device's commandline argument.
> > 
> > Which would break s390x guests. virtio-ccw doesn't have any concept of
> > "legacy" or "modern" devices (that's purely a virtio-pci concept),
> 
> Legacy is a generic concept found in virtio 1 spec.
> Modern isn't, virtio 1 only has transitional/non-transitional.
> 
> If you want to stick to the spec you should therefore
> use 
> 	legacy/transitional/non-transitional
> at the API level.
> 
> It is true that not all transports have all options.
> ccw does not support non-transitional devices,
> mmio does not support transitional ones.

We basically have:
- legacy devices: pci, ccw
- standard-compliant devices: pci, ccw, mmio
  - of these, pci and ccw have transitional support, which can be
    disabled for pci

Per default, I don't think libvirt should offer legacy devices - I see
this as a machine-version backwards-compatibility option which should
be handled via the machine version only.

It makes sense to have a way to force pci devices to either
transitional or non-transitional. For ccw and mmio, this is not
applicable. Therefore, I think libvirt should offer a switch to handle
transitional/non-transitional pci only and not provide any other
virtio-version switches.




More information about the libvir-list mailing list