On Tue, 06 Dec 2016 18:50:47 +0100 Greg Kurz <gr...@kaod.org> wrote: > Since commit "9a4c0e220d8a hw/virtio-pci: fix virtio behaviour", passing > -device virtio-blk-pci.disable-modern=off has no effect on 2.6 machine > types because the internal virtio-pci.disable-modern=on compat property > always prevail.
s/prevail/prevails/ > > This should ideally be fixed in the qdev properties core code, but it is > too late in the QEMU 2.8 schedule. So this patch fixes the issue by setting > the compat properties for every virtio-*-pci subtypes instead of the base s/subtypes/subtype/ > virtio-pci type. > > Signed-off-by: Greg Kurz <gr...@kaod.org> > --- > > This fix is for both QEMU 2.8 and 2.7.1. > > Generated with: > > for i in $(git grep 'define TYPE_VIRTIO_.*_PCI' hw/virtio/virtio-pci.h | \ > awk '{print $3 }'); do > printf '{\\'"\n .driver = %s,"'\\'"\n .property = > \"disable-modern\","'\\'"\n .value = \"on\","'\\'"\n },{"'\\'"\n > .driver = %s,"'\\'"\n .property = \"disable-legacy\","'\\'"\n > .value = \"off\","'\\'"\n }," $i $i > done Don't we want vhost-scsi-pci as well? > > include/hw/compat.h | 116 > ++++++++++++++++++++++++++++++++++++++++++++++++++- > 1 file changed, 114 insertions(+), 2 deletions(-)