Hi,
b) Rather than a "legacy-only" model for virtio-0.9, it
would be more
useful to have "transitional". This way the config would work for older
OSes that don't support virtio-1.0, and when/if the OS was upgraded such
that it supported virtio-1.0, that would be automatically used without
needing to change the config.
Having a legacy-only (instead of transitional) model could be useful for
regression-testing (i.e. whenever virtio-0.9 mode still works properly
in guests with virtio-1.0 support).
But that is pretty much the only reason I can think of to prefer the
virtio-0.9 devices being legacy-only instead of transitional.
A) libosinfo starts telling consumers that the preferred virtio
device
model for the relevant OSes is "virtio-0.9", and leaves the
recommendation for other OSes as "virtio".
B) libvirt adds a "virtio-0.9" model for all virtio devices that
actually have virtio-0.9 support (a couple of devices never existed
prior to virtio-1.0 (rng and ???) so virtio-0.9 would be nonsensical for
them).
input, gpu are 1.0 only too.
C) inside libvirt, the implementation of the "virtio-0.9"
model is
identical to "virtio", except that the VIR_PCI_CONNECT_TYPE flags for
these devices contain VIR_PCI_CONNECT_TYPE_PCI rather than
VIR_PCI_CONNECT_TYPE_PCIE, resulting in those devices being assigned to
a legacy PCI slot, and thus they would be transitional mode by default.
Looks good to me.
cheers,
Gerd