On Thu, Apr 25, 2019 at 02:09:39PM +0100, Stefan Hajnoczi wrote: > How to use .base_name, .generic_name, .transitional_name, and > .non_transitional_name can be confusing. > > Existing devices have .generic_name but its behavior is somewhat magic. > > Devices added to new versions of the VIRTIO specification should forego > transitional mode completely and always operate in non-transitional mode > because there are no existing drivers for them that require backwards > compatibility. > > This patch adds comments that hopefully make it easier for developers to > decide how to fill out VirtioPCIDeviceTypeInfo. > > Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> > --- > v2: > * Drop incorrect mention of machine type compat properties [ehabkost] > --- > hw/virtio/virtio-pci.h | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-)
Michael: This patch is for your virtio tree. > diff --git a/hw/virtio/virtio-pci.h b/hw/virtio/virtio-pci.h > index 18581854ca..0bd1fff942 100644 > --- a/hw/virtio/virtio-pci.h > +++ b/hw/virtio/virtio-pci.h > @@ -209,7 +209,8 @@ typedef struct VirtioPCIDeviceTypeInfo { > * Implements both INTERFACE_PCIE_DEVICE and > INTERFACE_CONVENTIONAL_PCI_DEVICE, > * but PCI Express is supported only in non-transitional mode. > * > - * The only type implemented by QEMU 3.1 and older. > + * The only type implemented by QEMU 3.1 and older. This type is less > + * explicit than the transitional and non-transitional device types. > */ > const char *generic_name; > /* > @@ -222,6 +223,9 @@ typedef struct VirtioPCIDeviceTypeInfo { > * The non-transitional device type. Optional. > * > * Implements INTERFACE_CONVENTIONAL_PCI_DEVICE only. > + * > + * New virtio device types should only define this and base_name, thereby > + * allowing only non-transitional mode. > */ > const char *non_transitional_name; > > -- > 2.20.1 > >
signature.asc
Description: PGP signature