* [PATCH 0/4] iotests: fix failures with non-PCI machines @ 2021-03-18 22:39 Laurent Vivier 2021-03-18 22:39 ` [PATCH 1/4] m68k: add the virtio devices aliases Laurent Vivier ` (3 more replies) 0 siblings, 4 replies; 16+ messages in thread From: Laurent Vivier @ 2021-03-18 22:39 UTC (permalink / raw) To: qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé, Laurent Vivier Tests are executed using virtio-*-pci even on a non PCI machine. The problem can be easily fixed using the virtio aliases (virtio-*), to run virtio-*-ccw on s390x and virtio-*-device on m68k. A first attempt was tried with virtio-*-ccw by detecting the machine type, this series removes it to use the aliases that are a cleaner approach. Laurent Vivier (4): m68k: add the virtio devices aliases iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" iotests: test m68k with the virt machine iotests: iothreads need ioeventfd blockdev.c | 6 +---- softmmu/qdev-monitor.c | 46 +++++++++++++++++++++++------------ tests/qemu-iotests/040 | 2 +- tests/qemu-iotests/051 | 12 +-------- tests/qemu-iotests/068 | 4 +-- tests/qemu-iotests/093 | 3 +-- tests/qemu-iotests/127 | 4 +-- tests/qemu-iotests/139 | 9 ++----- tests/qemu-iotests/182 | 13 ++-------- tests/qemu-iotests/238 | 4 +-- tests/qemu-iotests/240 | 10 ++++---- tests/qemu-iotests/256 | 2 ++ tests/qemu-iotests/257 | 4 +-- tests/qemu-iotests/307 | 4 +-- tests/qemu-iotests/iotests.py | 10 ++++---- tests/qemu-iotests/testenv.py | 1 + 16 files changed, 58 insertions(+), 76 deletions(-) -- 2.30.2 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 1/4] m68k: add the virtio devices aliases 2021-03-18 22:39 [PATCH 0/4] iotests: fix failures with non-PCI machines Laurent Vivier @ 2021-03-18 22:39 ` Laurent Vivier 2021-03-18 22:51 ` Philippe Mathieu-Daudé ` (2 more replies) 2021-03-18 22:39 ` [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" Laurent Vivier ` (2 subsequent siblings) 3 siblings, 3 replies; 16+ messages in thread From: Laurent Vivier @ 2021-03-18 22:39 UTC (permalink / raw) To: qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé, Laurent Vivier Similarly to 5f629d943cb0 ("s390x: fix s390 virtio aliases"), define the virtio aliases. This allows to start machines with virtio devices without knowledge of the implementation type. For instance, we can use "-device virtio-scsi" on m68k, s390x or PC, and the device will be "virtio-scsi-device", "virtio-scsi-ccw" or "virtio-scsi-pci". This already exists for s390x and -ccw interfaces, adds them for m68k and MMIO (-device) interfaces. Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- softmmu/qdev-monitor.c | 46 +++++++++++++++++++++++++++--------------- 1 file changed, 30 insertions(+), 16 deletions(-) diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c index 8dc656becca9..262d38b8c01e 100644 --- a/softmmu/qdev-monitor.c +++ b/softmmu/qdev-monitor.c @@ -42,6 +42,8 @@ #include "hw/qdev-properties.h" #include "hw/clock.h" +#define QEMU_ARCH_NO_PCI (QEMU_ARCH_S390X | QEMU_ARCH_M68K) + /* * Aliases were a bad idea from the start. Let's keep them * from spreading further. @@ -60,34 +62,46 @@ static const QDevAlias qdev_alias_table[] = { { "ES1370", "es1370" }, /* -soundhw name */ { "ich9-ahci", "ahci" }, { "lsi53c895a", "lsi" }, + { "virtio-9p-device", "virtio-9p", QEMU_ARCH_M68K }, { "virtio-9p-ccw", "virtio-9p", QEMU_ARCH_S390X }, - { "virtio-9p-pci", "virtio-9p", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-9p-pci", "virtio-9p", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, + { "virtio-balloon-device", "virtio-balloon", QEMU_ARCH_M68K }, { "virtio-balloon-ccw", "virtio-balloon", QEMU_ARCH_S390X }, - { "virtio-balloon-pci", "virtio-balloon", - QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-balloon-pci", "virtio-balloon", QEMU_ARCH_ALL & + ~QEMU_ARCH_NO_PCI }, + { "virtio-blk-device", "virtio-blk", QEMU_ARCH_M68K }, { "virtio-blk-ccw", "virtio-blk", QEMU_ARCH_S390X }, - { "virtio-blk-pci", "virtio-blk", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-blk-pci", "virtio-blk", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, { "virtio-gpu-ccw", "virtio-gpu", QEMU_ARCH_S390X }, - { "virtio-gpu-pci", "virtio-gpu", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-gpu-device", "virtio-gpu", QEMU_ARCH_M68K }, + { "virtio-gpu-pci", "virtio-gpu", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, + { "virtio-input-host-device", "virtio-input-host", QEMU_ARCH_M68K }, { "virtio-input-host-ccw", "virtio-input-host", QEMU_ARCH_S390X }, - { "virtio-input-host-pci", "virtio-input-host", - QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, - { "virtio-iommu-pci", "virtio-iommu", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-input-host-pci", "virtio-input-host", QEMU_ARCH_ALL & + ~QEMU_ARCH_NO_PCI }, + { "virtio-iommu-pci", "virtio-iommu", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, + { "virtio-keyboard-device", "virtio-keyboard", QEMU_ARCH_M68K }, { "virtio-keyboard-ccw", "virtio-keyboard", QEMU_ARCH_S390X }, - { "virtio-keyboard-pci", "virtio-keyboard", - QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-keyboard-pci", "virtio-keyboard", QEMU_ARCH_ALL & + ~QEMU_ARCH_NO_PCI }, + { "virtio-mouse-device", "virtio-mouse", QEMU_ARCH_M68K }, { "virtio-mouse-ccw", "virtio-mouse", QEMU_ARCH_S390X }, - { "virtio-mouse-pci", "virtio-mouse", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-mouse-pci", "virtio-mouse", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, + { "virtio-net-device", "virtio-net", QEMU_ARCH_M68K }, { "virtio-net-ccw", "virtio-net", QEMU_ARCH_S390X }, - { "virtio-net-pci", "virtio-net", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-net-pci", "virtio-net", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, + { "virtio-rng-device", "virtio-rng", QEMU_ARCH_M68K }, { "virtio-rng-ccw", "virtio-rng", QEMU_ARCH_S390X }, - { "virtio-rng-pci", "virtio-rng", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-rng-pci", "virtio-rng", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, + { "virtio-scsi-device", "virtio-scsi", QEMU_ARCH_M68K }, { "virtio-scsi-ccw", "virtio-scsi", QEMU_ARCH_S390X }, - { "virtio-scsi-pci", "virtio-scsi", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-scsi-pci", "virtio-scsi", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, + { "virtio-serial-device", "virtio-serial", QEMU_ARCH_M68K }, { "virtio-serial-ccw", "virtio-serial", QEMU_ARCH_S390X }, - { "virtio-serial-pci", "virtio-serial", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-serial-pci", "virtio-serial", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI}, + { "virtio-tablet-device", "virtio-tablet", QEMU_ARCH_M68K }, { "virtio-tablet-ccw", "virtio-tablet", QEMU_ARCH_S390X }, - { "virtio-tablet-pci", "virtio-tablet", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, + { "virtio-tablet-pci", "virtio-tablet", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, { } }; -- 2.30.2 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH 1/4] m68k: add the virtio devices aliases 2021-03-18 22:39 ` [PATCH 1/4] m68k: add the virtio devices aliases Laurent Vivier @ 2021-03-18 22:51 ` Philippe Mathieu-Daudé 2021-03-19 6:47 ` Thomas Huth 2021-03-19 11:36 ` Cornelia Huck 2 siblings, 0 replies; 16+ messages in thread From: Philippe Mathieu-Daudé @ 2021-03-18 22:51 UTC (permalink / raw) To: Laurent Vivier, qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini On 3/18/21 11:39 PM, Laurent Vivier wrote: > Similarly to 5f629d943cb0 ("s390x: fix s390 virtio aliases"), > define the virtio aliases. > > This allows to start machines with virtio devices without > knowledge of the implementation type. > > For instance, we can use "-device virtio-scsi" on > m68k, s390x or PC, and the device will be +"respectively" > "virtio-scsi-device", "virtio-scsi-ccw" or "virtio-scsi-pci". > > This already exists for s390x and -ccw interfaces, adds them "add"? > for m68k and MMIO (-device) interfaces. > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > --- > softmmu/qdev-monitor.c | 46 +++++++++++++++++++++++++++--------------- > 1 file changed, 30 insertions(+), 16 deletions(-) > > diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c > index 8dc656becca9..262d38b8c01e 100644 > --- a/softmmu/qdev-monitor.c > +++ b/softmmu/qdev-monitor.c > @@ -42,6 +42,8 @@ > #include "hw/qdev-properties.h" > #include "hw/clock.h" > > +#define QEMU_ARCH_NO_PCI (QEMU_ARCH_S390X | QEMU_ARCH_M68K) > + > /* > * Aliases were a bad idea from the start. Let's keep them > * from spreading further. > @@ -60,34 +62,46 @@ static const QDevAlias qdev_alias_table[] = { > { "ES1370", "es1370" }, /* -soundhw name */ > { "ich9-ahci", "ahci" }, > { "lsi53c895a", "lsi" }, > + { "virtio-9p-device", "virtio-9p", QEMU_ARCH_M68K }, > { "virtio-9p-ccw", "virtio-9p", QEMU_ARCH_S390X }, > - { "virtio-9p-pci", "virtio-9p", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-9p-pci", "virtio-9p", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, TIL QEMU_ARCH_NO_PCI :) > + { "virtio-balloon-device", "virtio-balloon", QEMU_ARCH_M68K }, > { "virtio-balloon-ccw", "virtio-balloon", QEMU_ARCH_S390X }, > - { "virtio-balloon-pci", "virtio-balloon", > - QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-balloon-pci", "virtio-balloon", QEMU_ARCH_ALL & > + ~QEMU_ARCH_NO_PCI }, > + { "virtio-blk-device", "virtio-blk", QEMU_ARCH_M68K }, > { "virtio-blk-ccw", "virtio-blk", QEMU_ARCH_S390X }, > - { "virtio-blk-pci", "virtio-blk", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-blk-pci", "virtio-blk", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > { "virtio-gpu-ccw", "virtio-gpu", QEMU_ARCH_S390X }, > - { "virtio-gpu-pci", "virtio-gpu", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-gpu-device", "virtio-gpu", QEMU_ARCH_M68K }, > + { "virtio-gpu-pci", "virtio-gpu", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > + { "virtio-input-host-device", "virtio-input-host", QEMU_ARCH_M68K }, > { "virtio-input-host-ccw", "virtio-input-host", QEMU_ARCH_S390X }, > - { "virtio-input-host-pci", "virtio-input-host", > - QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > - { "virtio-iommu-pci", "virtio-iommu", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-input-host-pci", "virtio-input-host", QEMU_ARCH_ALL & > + ~QEMU_ARCH_NO_PCI }, > + { "virtio-iommu-pci", "virtio-iommu", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > + { "virtio-keyboard-device", "virtio-keyboard", QEMU_ARCH_M68K }, > { "virtio-keyboard-ccw", "virtio-keyboard", QEMU_ARCH_S390X }, > - { "virtio-keyboard-pci", "virtio-keyboard", > - QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-keyboard-pci", "virtio-keyboard", QEMU_ARCH_ALL & > + ~QEMU_ARCH_NO_PCI }, > + { "virtio-mouse-device", "virtio-mouse", QEMU_ARCH_M68K }, > { "virtio-mouse-ccw", "virtio-mouse", QEMU_ARCH_S390X }, > - { "virtio-mouse-pci", "virtio-mouse", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-mouse-pci", "virtio-mouse", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > + { "virtio-net-device", "virtio-net", QEMU_ARCH_M68K }, > { "virtio-net-ccw", "virtio-net", QEMU_ARCH_S390X }, > - { "virtio-net-pci", "virtio-net", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-net-pci", "virtio-net", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > + { "virtio-rng-device", "virtio-rng", QEMU_ARCH_M68K }, > { "virtio-rng-ccw", "virtio-rng", QEMU_ARCH_S390X }, > - { "virtio-rng-pci", "virtio-rng", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-rng-pci", "virtio-rng", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > + { "virtio-scsi-device", "virtio-scsi", QEMU_ARCH_M68K }, > { "virtio-scsi-ccw", "virtio-scsi", QEMU_ARCH_S390X }, > - { "virtio-scsi-pci", "virtio-scsi", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-scsi-pci", "virtio-scsi", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > + { "virtio-serial-device", "virtio-serial", QEMU_ARCH_M68K }, > { "virtio-serial-ccw", "virtio-serial", QEMU_ARCH_S390X }, > - { "virtio-serial-pci", "virtio-serial", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-serial-pci", "virtio-serial", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI}, > + { "virtio-tablet-device", "virtio-tablet", QEMU_ARCH_M68K }, > { "virtio-tablet-ccw", "virtio-tablet", QEMU_ARCH_S390X }, > - { "virtio-tablet-pci", "virtio-tablet", QEMU_ARCH_ALL & ~QEMU_ARCH_S390X }, > + { "virtio-tablet-pci", "virtio-tablet", QEMU_ARCH_ALL & ~QEMU_ARCH_NO_PCI }, > { } > }; This could be easier to split this patch in 2: 1/ QEMU_ARCH_S390X -> QEMU_ARCH_NO_PCI 2/ complete QEMU_ARCH_M68K aliases Regardless: Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 1/4] m68k: add the virtio devices aliases 2021-03-18 22:39 ` [PATCH 1/4] m68k: add the virtio devices aliases Laurent Vivier 2021-03-18 22:51 ` Philippe Mathieu-Daudé @ 2021-03-19 6:47 ` Thomas Huth 2021-03-19 11:36 ` Cornelia Huck 2 siblings, 0 replies; 16+ messages in thread From: Thomas Huth @ 2021-03-19 6:47 UTC (permalink / raw) To: Laurent Vivier, qemu-devel Cc: Kevin Wolf, Peter Maydell, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé On 18/03/2021 23.39, Laurent Vivier wrote: > Similarly to 5f629d943cb0 ("s390x: fix s390 virtio aliases"), > define the virtio aliases. > > This allows to start machines with virtio devices without > knowledge of the implementation type. > > For instance, we can use "-device virtio-scsi" on > m68k, s390x or PC, and the device will be > "virtio-scsi-device", "virtio-scsi-ccw" or "virtio-scsi-pci". > > This already exists for s390x and -ccw interfaces, adds them > for m68k and MMIO (-device) interfaces. > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > --- > softmmu/qdev-monitor.c | 46 +++++++++++++++++++++++++++--------------- > 1 file changed, 30 insertions(+), 16 deletions(-) With the typo mentioned by Philippe fixed: Reviewed-by: Thomas Huth <thuth@redhat.com> ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 1/4] m68k: add the virtio devices aliases 2021-03-18 22:39 ` [PATCH 1/4] m68k: add the virtio devices aliases Laurent Vivier 2021-03-18 22:51 ` Philippe Mathieu-Daudé 2021-03-19 6:47 ` Thomas Huth @ 2021-03-19 11:36 ` Cornelia Huck 2021-03-19 12:07 ` Laurent Vivier 2 siblings, 1 reply; 16+ messages in thread From: Cornelia Huck @ 2021-03-19 11:36 UTC (permalink / raw) To: Laurent Vivier Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Markus Armbruster, qemu-devel, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé On Thu, 18 Mar 2021 23:39:04 +0100 Laurent Vivier <laurent@vivier.eu> wrote: > Similarly to 5f629d943cb0 ("s390x: fix s390 virtio aliases"), > define the virtio aliases. > > This allows to start machines with virtio devices without > knowledge of the implementation type. > > For instance, we can use "-device virtio-scsi" on > m68k, s390x or PC, and the device will be > "virtio-scsi-device", "virtio-scsi-ccw" or "virtio-scsi-pci". > > This already exists for s390x and -ccw interfaces, adds them > for m68k and MMIO (-device) interfaces. > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > --- > softmmu/qdev-monitor.c | 46 +++++++++++++++++++++++++++--------------- > 1 file changed, 30 insertions(+), 16 deletions(-) > > diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c > index 8dc656becca9..262d38b8c01e 100644 > --- a/softmmu/qdev-monitor.c > +++ b/softmmu/qdev-monitor.c > @@ -42,6 +42,8 @@ > #include "hw/qdev-properties.h" > #include "hw/clock.h" > > +#define QEMU_ARCH_NO_PCI (QEMU_ARCH_S390X | QEMU_ARCH_M68K) The name of the #define is a tad misleading (we do have virtio-pci devices on s390x, unlike in 2012, we just don't want the aliases to point to them.) Maybe QEMU_ARCH_NONPCI_DEFAULT? > + > /* > * Aliases were a bad idea from the start. Let's keep them > * from spreading further. Otherwise, LGTM. ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 1/4] m68k: add the virtio devices aliases 2021-03-19 11:36 ` Cornelia Huck @ 2021-03-19 12:07 ` Laurent Vivier 0 siblings, 0 replies; 16+ messages in thread From: Laurent Vivier @ 2021-03-19 12:07 UTC (permalink / raw) To: Cornelia Huck Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Markus Armbruster, qemu-devel, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé Le 19/03/2021 à 12:36, Cornelia Huck a écrit : > On Thu, 18 Mar 2021 23:39:04 +0100 > Laurent Vivier <laurent@vivier.eu> wrote: > >> Similarly to 5f629d943cb0 ("s390x: fix s390 virtio aliases"), >> define the virtio aliases. >> >> This allows to start machines with virtio devices without >> knowledge of the implementation type. >> >> For instance, we can use "-device virtio-scsi" on >> m68k, s390x or PC, and the device will be >> "virtio-scsi-device", "virtio-scsi-ccw" or "virtio-scsi-pci". >> >> This already exists for s390x and -ccw interfaces, adds them >> for m68k and MMIO (-device) interfaces. >> >> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >> --- >> softmmu/qdev-monitor.c | 46 +++++++++++++++++++++++++++--------------- >> 1 file changed, 30 insertions(+), 16 deletions(-) >> >> diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c >> index 8dc656becca9..262d38b8c01e 100644 >> --- a/softmmu/qdev-monitor.c >> +++ b/softmmu/qdev-monitor.c >> @@ -42,6 +42,8 @@ >> #include "hw/qdev-properties.h" >> #include "hw/clock.h" >> >> +#define QEMU_ARCH_NO_PCI (QEMU_ARCH_S390X | QEMU_ARCH_M68K) > > The name of the #define is a tad misleading (we do have virtio-pci > devices on s390x, unlike in 2012, we just don't want the aliases to > point to them.) Maybe QEMU_ARCH_NONPCI_DEFAULT? I have changed this patch to define QEMU_ARCH_VIRTIO_PCI with the list of archs with virtio-pci devices, and QEMU_ARCH_VIRTIO_CCW and then QEMU_ARCH_VIRTIO_MMIO > >> + >> /* >> * Aliases were a bad idea from the start. Let's keep them >> * from spreading further. > > Otherwise, LGTM. > Thanks, Laurent ^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-18 22:39 [PATCH 0/4] iotests: fix failures with non-PCI machines Laurent Vivier 2021-03-18 22:39 ` [PATCH 1/4] m68k: add the virtio devices aliases Laurent Vivier @ 2021-03-18 22:39 ` Laurent Vivier 2021-03-19 10:39 ` Philippe Mathieu-Daudé 2021-03-19 11:43 ` Cornelia Huck 2021-03-18 22:39 ` [PATCH 3/4] iotests: test m68k with the virt machine Laurent Vivier 2021-03-18 22:39 ` [PATCH 4/4] iotests: iothreads need ioeventfd Laurent Vivier 3 siblings, 2 replies; 16+ messages in thread From: Laurent Vivier @ 2021-03-18 22:39 UTC (permalink / raw) To: qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé, Laurent Vivier Commit f1d5516ab583 introduces a test in some iotests to check if the machine is a s390-ssw-virtio and to select virtio-*-ccw rather than virtio-*-pci. We don't need that because QEMU already provides aliases to use the correct virtio interface according to the machine type. This patch removes all virtio-*-pci and virtio-*-ccw to use virtio-* instead. Signed-off-by: Laurent Vivier <laurent@vivier.eu> cc: Cornelia Huck <cohuck@redhat.com> --- blockdev.c | 6 +----- tests/qemu-iotests/040 | 2 +- tests/qemu-iotests/051 | 12 +----------- tests/qemu-iotests/068 | 4 +--- tests/qemu-iotests/093 | 3 +-- tests/qemu-iotests/139 | 9 ++------- tests/qemu-iotests/182 | 13 ++----------- tests/qemu-iotests/238 | 4 +--- tests/qemu-iotests/240 | 10 +++++----- tests/qemu-iotests/257 | 4 ++-- tests/qemu-iotests/307 | 4 +--- tests/qemu-iotests/iotests.py | 5 ----- 12 files changed, 18 insertions(+), 58 deletions(-) diff --git a/blockdev.c b/blockdev.c index 5cc7c7effe9f..64da5350e3ad 100644 --- a/blockdev.c +++ b/blockdev.c @@ -969,11 +969,7 @@ DriveInfo *drive_new(QemuOpts *all_opts, BlockInterfaceType block_default_type, QemuOpts *devopts; devopts = qemu_opts_create(qemu_find_opts("device"), NULL, 0, &error_abort); - if (arch_type == QEMU_ARCH_S390X) { - qemu_opt_set(devopts, "driver", "virtio-blk-ccw", &error_abort); - } else { - qemu_opt_set(devopts, "driver", "virtio-blk-pci", &error_abort); - } + qemu_opt_set(devopts, "driver", "virtio-blk", &error_abort); qemu_opt_set(devopts, "drive", qdict_get_str(bs_opts, "id"), &error_abort); } diff --git a/tests/qemu-iotests/040 b/tests/qemu-iotests/040 index 336ff7c4f2ab..ba7cb34ce8cf 100755 --- a/tests/qemu-iotests/040 +++ b/tests/qemu-iotests/040 @@ -89,7 +89,7 @@ class TestSingleDrive(ImageCommitTestCase): qemu_io('-f', 'raw', '-c', 'write -P 0xab 0 524288', backing_img) qemu_io('-f', iotests.imgfmt, '-c', 'write -P 0xef 524288 524288', mid_img) self.vm = iotests.VM().add_drive(test_img, "node-name=top,backing.node-name=mid,backing.backing.node-name=base", interface="none") - self.vm.add_device(iotests.get_virtio_scsi_device()) + self.vm.add_device('virtio-scsi') self.vm.add_device("scsi-hd,id=scsi0,drive=drive0") self.vm.launch() self.has_quit = False diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051 index 7cbd1415ce7b..00382cc55e25 100755 --- a/tests/qemu-iotests/051 +++ b/tests/qemu-iotests/051 @@ -119,17 +119,7 @@ echo echo === Device without drive === echo -case "$QEMU_DEFAULT_MACHINE" in - s390-ccw-virtio) - virtio_scsi=virtio-scsi-ccw - ;; - *) - virtio_scsi=virtio-scsi-pci - ;; -esac - -run_qemu -device $virtio_scsi -device scsi-hd | - sed -e "s/$virtio_scsi/VIRTIO_SCSI/" +run_qemu -device virtio-scsi -device scsi-hd echo echo === Overriding backing file === diff --git a/tests/qemu-iotests/068 b/tests/qemu-iotests/068 index 03e03508a6e2..54e49c8ffab1 100755 --- a/tests/qemu-iotests/068 +++ b/tests/qemu-iotests/068 @@ -49,11 +49,9 @@ IMG_SIZE=128K case "$QEMU_DEFAULT_MACHINE" in s390-ccw-virtio) platform_parm="-no-shutdown" - hba=virtio-scsi-ccw ;; *) platform_parm="" - hba=virtio-scsi-pci ;; esac @@ -61,7 +59,7 @@ _qemu() { $QEMU $platform_parm -nographic -monitor stdio -serial none \ -drive if=none,id=drive0,file="$TEST_IMG",format="$IMGFMT" \ - -device $hba,id=hba0 \ + -device virtio-scsi,id=hba0 \ -device scsi-hd,drive=drive0 \ "$@" |\ _filter_qemu | _filter_hmp diff --git a/tests/qemu-iotests/093 b/tests/qemu-iotests/093 index 7745cb04b611..93274dc8cbde 100755 --- a/tests/qemu-iotests/093 +++ b/tests/qemu-iotests/093 @@ -371,8 +371,7 @@ class ThrottleTestGroupNames(iotests.QMPTestCase): class ThrottleTestRemovableMedia(iotests.QMPTestCase): def setUp(self): self.vm = iotests.VM() - self.vm.add_device("{},id=virtio-scsi".format( - iotests.get_virtio_scsi_device())) + self.vm.add_device("{},id=virtio-scsi".format('virtio-scsi')) self.vm.launch() def tearDown(self): diff --git a/tests/qemu-iotests/139 b/tests/qemu-iotests/139 index e79b3c21fdce..178b1ee230ca 100755 --- a/tests/qemu-iotests/139 +++ b/tests/qemu-iotests/139 @@ -26,18 +26,13 @@ import time base_img = os.path.join(iotests.test_dir, 'base.img') new_img = os.path.join(iotests.test_dir, 'new.img') -if iotests.qemu_default_machine == 's390-ccw-virtio': - default_virtio_blk = 'virtio-blk-ccw' -else: - default_virtio_blk = 'virtio-blk-pci' class TestBlockdevDel(iotests.QMPTestCase): def setUp(self): iotests.qemu_img('create', '-f', iotests.imgfmt, base_img, '1M') self.vm = iotests.VM() - self.vm.add_device("{},id=virtio-scsi".format( - iotests.get_virtio_scsi_device())) + self.vm.add_device("{},id=virtio-scsi".format('virtio-scsi')) self.vm.launch() def tearDown(self): @@ -93,7 +88,7 @@ class TestBlockdevDel(iotests.QMPTestCase): self.checkBlockDriverState(node, expect_error) # Add a device model - def addDeviceModel(self, device, backend, driver = default_virtio_blk): + def addDeviceModel(self, device, backend, driver = 'virtio-blk'): result = self.vm.qmp('device_add', id = device, driver = driver, drive = backend) self.assert_qmp(result, 'return', {}) diff --git a/tests/qemu-iotests/182 b/tests/qemu-iotests/182 index 55a0384c0873..fcd1d796ebd0 100755 --- a/tests/qemu-iotests/182 +++ b/tests/qemu-iotests/182 @@ -46,26 +46,17 @@ _supported_proto file size=32M -case "$QEMU_DEFAULT_MACHINE" in - s390-ccw-virtio) - virtioblk=virtio-blk-ccw - ;; - *) - virtioblk=virtio-blk-pci - ;; -esac - _make_test_img $size echo "Starting QEMU" _launch_qemu -drive file=$TEST_IMG,if=none,id=drive0,file.locking=on \ - -device $virtioblk,drive=drive0 + -device virtio-blk,drive=drive0 echo echo "Starting a second QEMU using the same image should fail" echo 'quit' | $QEMU -nographic -monitor stdio \ -drive file=$TEST_IMG,if=none,id=drive0,file.locking=on \ - -device $virtioblk,drive=drive0 2>&1 | _filter_testdir 2>&1 | + -device virtio-blk,drive=drive0 2>&1 | _filter_testdir 2>&1 | _filter_qemu | sed -e '/falling back to POSIX file/d' \ -e '/locks can be lost unexpectedly/d' diff --git a/tests/qemu-iotests/238 b/tests/qemu-iotests/238 index 8a10af57f17c..38bd3744e68c 100755 --- a/tests/qemu-iotests/238 +++ b/tests/qemu-iotests/238 @@ -26,14 +26,12 @@ from iotests import log iotests.script_initialize() -virtio_scsi_device = iotests.get_virtio_scsi_device() - vm = iotests.VM() vm.launch() log(vm.qmp('blockdev-add', node_name='hd0', driver='null-co', read_zeroes=True)) log(vm.qmp('object-add', qom_type='iothread', id='iothread0')) -log(vm.qmp('device_add', id='scsi0', driver=virtio_scsi_device, iothread='iothread0')) +log(vm.qmp('device_add', id='scsi0', driver='virtio-scsi', iothread='iothread0')) log(vm.qmp('device_add', id='scsi-hd0', driver='scsi-hd', drive='hd0')) log(vm.qmp('block_set_io_throttle', id='scsi-hd0', bps=0, bps_rd=0, bps_wr=0, iops=1000, iops_rd=0, iops_wr=0, conv_keys=False)) diff --git a/tests/qemu-iotests/240 b/tests/qemu-iotests/240 index ab077f4ceb01..9b281e1dc036 100755 --- a/tests/qemu-iotests/240 +++ b/tests/qemu-iotests/240 @@ -42,7 +42,7 @@ class TestCase(iotests.QMPTestCase): iotests.log('==Unplug a SCSI disk and then plug it again==') self.vm.qmp_log('blockdev-add', driver='null-co', read_zeroes=True, node_name='hd0') self.vm.qmp_log('object-add', qom_type='iothread', id="iothread0") - self.vm.qmp_log('device_add', id='scsi0', driver=iotests.get_virtio_scsi_device(), iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) + self.vm.qmp_log('device_add', id='scsi0', driver='virtio-scsi', iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) self.vm.qmp_log('device_add', id='scsi-hd0', driver='scsi-hd', drive='hd0') self.vm.qmp_log('device_del', id='scsi-hd0') self.vm.event_wait('DEVICE_DELETED') @@ -55,7 +55,7 @@ class TestCase(iotests.QMPTestCase): iotests.log('==Attach two SCSI disks using the same block device and the same iothread==') self.vm.qmp_log('blockdev-add', driver='null-co', read_zeroes=True, node_name='hd0', read_only=True) self.vm.qmp_log('object-add', qom_type='iothread', id="iothread0") - self.vm.qmp_log('device_add', id='scsi0', driver=iotests.get_virtio_scsi_device(), iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) + self.vm.qmp_log('device_add', id='scsi0', driver='virtio-scsi', iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) self.vm.qmp_log('device_add', id='scsi-hd0', driver='scsi-hd', drive='hd0') self.vm.qmp_log('device_add', id='scsi-hd1', driver='scsi-hd', drive='hd0') @@ -73,8 +73,8 @@ class TestCase(iotests.QMPTestCase): self.vm.qmp_log('object-add', qom_type='iothread', id="iothread0") self.vm.qmp_log('object-add', qom_type='iothread', id="iothread1") - self.vm.qmp_log('device_add', id='scsi0', driver=iotests.get_virtio_scsi_device(), iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) - self.vm.qmp_log('device_add', id='scsi1', driver=iotests.get_virtio_scsi_device(), iothread='iothread1', filters=[iotests.filter_qmp_virtio_scsi]) + self.vm.qmp_log('device_add', id='scsi0', driver='virtio-scsi', iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) + self.vm.qmp_log('device_add', id='scsi1', driver='virtio-scsi', iothread='iothread1', filters=[iotests.filter_qmp_virtio_scsi]) self.vm.qmp_log('device_add', id='scsi-hd0', driver='scsi-hd', drive='hd0', bus="scsi0.0") self.vm.qmp_log('device_add', id='scsi-hd1', driver='scsi-hd', drive='hd0', bus="scsi1.0") @@ -99,7 +99,7 @@ class TestCase(iotests.QMPTestCase): self.vm.qmp_log('nbd-server-add', device='hd0') self.vm.qmp_log('object-add', qom_type='iothread', id="iothread0") - self.vm.qmp_log('device_add', id='scsi0', driver=iotests.get_virtio_scsi_device(), iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) + self.vm.qmp_log('device_add', id='scsi0', driver='virtio-scsi', iothread='iothread0', filters=[iotests.filter_qmp_virtio_scsi]) self.vm.qmp_log('device_add', id='scsi-hd0', driver='scsi-hd', drive='hd0') if __name__ == '__main__': diff --git a/tests/qemu-iotests/257 b/tests/qemu-iotests/257 index 7cd25208296e..c72c82a171b4 100755 --- a/tests/qemu-iotests/257 +++ b/tests/qemu-iotests/257 @@ -292,7 +292,7 @@ def test_bitmap_sync(bsync_mode, msync_mode='bitmap', failure=None): log('--- Preparing image & VM ---\n') drive0 = Drive(img_path, vm=vm) drive0.img_create(iotests.imgfmt, SIZE) - vm.add_device("{},id=scsi0".format(iotests.get_virtio_scsi_device())) + vm.add_device("{},id=scsi0".format('virtio-scsi')) vm.launch() file_config = { @@ -449,7 +449,7 @@ def test_backup_api(): log('--- Preparing image & VM ---\n') drive0 = Drive(img_path, vm=vm) drive0.img_create(iotests.imgfmt, SIZE) - vm.add_device("{},id=scsi0".format(iotests.get_virtio_scsi_device())) + vm.add_device("{},id=scsi0".format('virtio-scsi')) vm.launch() file_config = { diff --git a/tests/qemu-iotests/307 b/tests/qemu-iotests/307 index 9008974346b0..c7685347bc4c 100755 --- a/tests/qemu-iotests/307 +++ b/tests/qemu-iotests/307 @@ -40,13 +40,11 @@ with iotests.FilePath('image') as img, \ iotests.log('=== Launch VM ===') - virtio_scsi_device = iotests.get_virtio_scsi_device() - vm.add_object('iothread,id=iothread0') vm.add_blockdev(f'file,filename={img},node-name=file') vm.add_blockdev(f'{iotests.imgfmt},file=file,node-name=fmt') vm.add_blockdev('raw,file=file,node-name=ro,read-only=on') - vm.add_device(f'id=scsi0,driver={virtio_scsi_device},iothread=iothread0') + vm.add_device(f'id=scsi0,driver=virtio-scsi,iothread=iothread0') vm.launch() vm.qmp_log('nbd-server-start', diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index 90d0b6252368..1e9e6a066e90 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -234,11 +234,6 @@ def qemu_io_silent_check(*args): stderr=subprocess.STDOUT) return exitcode == 0 -def get_virtio_scsi_device(): - if qemu_default_machine == 's390-ccw-virtio': - return 'virtio-scsi-ccw' - return 'virtio-scsi-pci' - class QemuIoInteractive: def __init__(self, *args): self.args = qemu_io_args_no_fmt + list(args) -- 2.30.2 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-18 22:39 ` [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" Laurent Vivier @ 2021-03-19 10:39 ` Philippe Mathieu-Daudé 2021-03-19 11:43 ` Cornelia Huck 1 sibling, 0 replies; 16+ messages in thread From: Philippe Mathieu-Daudé @ 2021-03-19 10:39 UTC (permalink / raw) To: Laurent Vivier, qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini On 3/18/21 11:39 PM, Laurent Vivier wrote: > Commit f1d5516ab583 introduces a test in some iotests to check if > the machine is a s390-ssw-virtio and to select virtio-*-ccw rather > than virtio-*-pci. > > We don't need that because QEMU already provides aliases to use the correct > virtio interface according to the machine type. > > This patch removes all virtio-*-pci and virtio-*-ccw to use virtio-* > instead. > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > cc: Cornelia Huck <cohuck@redhat.com> > --- > blockdev.c | 6 +----- > tests/qemu-iotests/040 | 2 +- > tests/qemu-iotests/051 | 12 +----------- > tests/qemu-iotests/068 | 4 +--- > tests/qemu-iotests/093 | 3 +-- > tests/qemu-iotests/139 | 9 ++------- > tests/qemu-iotests/182 | 13 ++----------- > tests/qemu-iotests/238 | 4 +--- > tests/qemu-iotests/240 | 10 +++++----- > tests/qemu-iotests/257 | 4 ++-- > tests/qemu-iotests/307 | 4 +--- > tests/qemu-iotests/iotests.py | 5 ----- > 12 files changed, 18 insertions(+), 58 deletions(-) > diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051 > index 7cbd1415ce7b..00382cc55e25 100755 > --- a/tests/qemu-iotests/051 > +++ b/tests/qemu-iotests/051 > @@ -119,17 +119,7 @@ echo > echo === Device without drive === > echo > > -case "$QEMU_DEFAULT_MACHINE" in > - s390-ccw-virtio) > - virtio_scsi=virtio-scsi-ccw > - ;; > - *) > - virtio_scsi=virtio-scsi-pci > - ;; > -esac > - > -run_qemu -device $virtio_scsi -device scsi-hd | > - sed -e "s/$virtio_scsi/VIRTIO_SCSI/" > +run_qemu -device virtio-scsi -device scsi-hd > > echo > echo === Overriding backing file === This one failed (but the fix is trivial): 051 fail [05:49:47] [05:50:01] 13.3s output mismatch (see 051.out.bad) --- /builds/philmd/qemu2/tests/qemu-iotests/051.pc.out +++ 051.out.bad @@ -72,7 +72,7 @@ === Device without drive === -Testing: -device VIRTIO_SCSI -device scsi-hd +Testing: -device virtio-scsi -device scsi-hd QEMU X.Y.Z monitor - type 'help' for more information (qemu) QEMU_PROG: -device scsi-hd: drive property not set Failures: 051 Failed 1 of 56 iotests ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-18 22:39 ` [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" Laurent Vivier 2021-03-19 10:39 ` Philippe Mathieu-Daudé @ 2021-03-19 11:43 ` Cornelia Huck 2021-03-19 12:09 ` Laurent Vivier 1 sibling, 1 reply; 16+ messages in thread From: Cornelia Huck @ 2021-03-19 11:43 UTC (permalink / raw) To: Laurent Vivier Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Markus Armbruster, qemu-devel, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé On Thu, 18 Mar 2021 23:39:05 +0100 Laurent Vivier <laurent@vivier.eu> wrote: > Commit f1d5516ab583 introduces a test in some iotests to check if > the machine is a s390-ssw-virtio and to select virtio-*-ccw rather s/ssw/ccw/ > than virtio-*-pci. > > We don't need that because QEMU already provides aliases to use the correct > virtio interface according to the machine type. Maybe add a comment that this also enables virtio-mmio? > > This patch removes all virtio-*-pci and virtio-*-ccw to use virtio-* > instead. > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > cc: Cornelia Huck <cohuck@redhat.com> > --- > blockdev.c | 6 +----- Hm, that also tweaks how -drive behaves, IIUC. Intended, I think; but worth a note as well? > tests/qemu-iotests/040 | 2 +- > tests/qemu-iotests/051 | 12 +----------- > tests/qemu-iotests/068 | 4 +--- > tests/qemu-iotests/093 | 3 +-- > tests/qemu-iotests/139 | 9 ++------- > tests/qemu-iotests/182 | 13 ++----------- > tests/qemu-iotests/238 | 4 +--- > tests/qemu-iotests/240 | 10 +++++----- > tests/qemu-iotests/257 | 4 ++-- > tests/qemu-iotests/307 | 4 +--- > tests/qemu-iotests/iotests.py | 5 ----- > 12 files changed, 18 insertions(+), 58 deletions(-) ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-19 11:43 ` Cornelia Huck @ 2021-03-19 12:09 ` Laurent Vivier 0 siblings, 0 replies; 16+ messages in thread From: Laurent Vivier @ 2021-03-19 12:09 UTC (permalink / raw) To: Cornelia Huck Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Markus Armbruster, qemu-devel, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé Le 19/03/2021 à 12:43, Cornelia Huck a écrit : > On Thu, 18 Mar 2021 23:39:05 +0100 > Laurent Vivier <laurent@vivier.eu> wrote: > >> Commit f1d5516ab583 introduces a test in some iotests to check if >> the machine is a s390-ssw-virtio and to select virtio-*-ccw rather > > s/ssw/ccw/ > >> than virtio-*-pci. >> >> We don't need that because QEMU already provides aliases to use the correct >> virtio interface according to the machine type. > > Maybe add a comment that this also enables virtio-mmio? ok >> >> This patch removes all virtio-*-pci and virtio-*-ccw to use virtio-* >> instead. >> >> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >> cc: Cornelia Huck <cohuck@redhat.com> >> --- >> blockdev.c | 6 +----- > > Hm, that also tweaks how -drive behaves, IIUC. Intended, I think; but > worth a note as well? > You're right. I think it needs a separate patch, in fact. Thanks, Laurent ^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 3/4] iotests: test m68k with the virt machine 2021-03-18 22:39 [PATCH 0/4] iotests: fix failures with non-PCI machines Laurent Vivier 2021-03-18 22:39 ` [PATCH 1/4] m68k: add the virtio devices aliases Laurent Vivier 2021-03-18 22:39 ` [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" Laurent Vivier @ 2021-03-18 22:39 ` Laurent Vivier 2021-03-18 22:46 ` Philippe Mathieu-Daudé 2021-03-18 22:39 ` [PATCH 4/4] iotests: iothreads need ioeventfd Laurent Vivier 3 siblings, 1 reply; 16+ messages in thread From: Laurent Vivier @ 2021-03-18 22:39 UTC (permalink / raw) To: qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé, Laurent Vivier This allows to cover the virtio tests with a 32bit big-endian virtio-mmio machine. Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- tests/qemu-iotests/testenv.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/qemu-iotests/testenv.py b/tests/qemu-iotests/testenv.py index 1fbec854c1f7..6d27712617a3 100644 --- a/tests/qemu-iotests/testenv.py +++ b/tests/qemu-iotests/testenv.py @@ -208,6 +208,7 @@ def __init__(self, imgfmt: str, imgproto: str, aiomode: str, ('arm', 'virt'), ('aarch64', 'virt'), ('avr', 'mega2560'), + ('m68k', 'virt'), ('rx', 'gdbsim-r5f562n8'), ('tricore', 'tricore_testboard') ) -- 2.30.2 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH 3/4] iotests: test m68k with the virt machine 2021-03-18 22:39 ` [PATCH 3/4] iotests: test m68k with the virt machine Laurent Vivier @ 2021-03-18 22:46 ` Philippe Mathieu-Daudé 0 siblings, 0 replies; 16+ messages in thread From: Philippe Mathieu-Daudé @ 2021-03-18 22:46 UTC (permalink / raw) To: Laurent Vivier, qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini On 3/18/21 11:39 PM, Laurent Vivier wrote: > This allows to cover the virtio tests with a 32bit big-endian > virtio-mmio machine. > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > --- > tests/qemu-iotests/testenv.py | 1 + > 1 file changed, 1 insertion(+) Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> ^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 4/4] iotests: iothreads need ioeventfd 2021-03-18 22:39 [PATCH 0/4] iotests: fix failures with non-PCI machines Laurent Vivier ` (2 preceding siblings ...) 2021-03-18 22:39 ` [PATCH 3/4] iotests: test m68k with the virt machine Laurent Vivier @ 2021-03-18 22:39 ` Laurent Vivier 2021-03-19 11:06 ` Paolo Bonzini 3 siblings, 1 reply; 16+ messages in thread From: Laurent Vivier @ 2021-03-18 22:39 UTC (permalink / raw) To: qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Paolo Bonzini, Philippe Mathieu-Daudé, Laurent Vivier And ioeventfd are only available with virtio-scsi-pci, so don't use the alias and add a rule to require virtio-scsi-pci for the tests that use iothreads. Signed-off-by: Laurent Vivier <laurent@vivier.eu> --- tests/qemu-iotests/127 | 4 ++-- tests/qemu-iotests/256 | 2 ++ tests/qemu-iotests/iotests.py | 5 +++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/tests/qemu-iotests/127 b/tests/qemu-iotests/127 index 98e8e82a8210..a3693533685a 100755 --- a/tests/qemu-iotests/127 +++ b/tests/qemu-iotests/127 @@ -44,7 +44,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 _supported_fmt qcow2 _supported_proto file fuse -_require_devices virtio-scsi scsi-hd +_require_devices virtio-scsi-pci scsi-hd IMG_SIZE=64K @@ -62,7 +62,7 @@ $QEMU_IO -c 'write 0 42' "$TEST_IMG.overlay0" | _filter_qemu_io _launch_qemu \ -object iothread,id=iothr \ -blockdev node-name=source,driver=$IMGFMT,file.driver=file,file.filename="$TEST_IMG.overlay0" \ - -device virtio-scsi,id=scsi-bus,iothread=iothr \ + -device virtio-scsi-pci,id=scsi-bus,iothread=iothr \ -device scsi-hd,bus=scsi-bus.0,drive=source _send_qemu_cmd $QEMU_HANDLE \ diff --git a/tests/qemu-iotests/256 b/tests/qemu-iotests/256 index 8d82a1dd865f..eb3af0dea80c 100755 --- a/tests/qemu-iotests/256 +++ b/tests/qemu-iotests/256 @@ -24,6 +24,8 @@ import os import iotests from iotests import log +iotests._verify_virtio_scsi_pci() + iotests.script_initialize(supported_fmts=['qcow2']) size = 64 * 1024 * 1024 diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index 1e9e6a066e90..3404ed534bb5 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -1146,6 +1146,11 @@ def _verify_virtio_blk() -> None: if 'virtio-blk' not in out: notrun('Missing virtio-blk in QEMU binary') +def _verify_virtio_scsi_pci() -> None: + out = qemu_pipe('-M', 'none', '-device', 'help') + if 'virtio-scsi-pci' not in out: + notrun('Missing virtio-scsi-pci in QEMU binary') + def supports_quorum(): return 'quorum' in qemu_img_pipe('--help') -- 2.30.2 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH 4/4] iotests: iothreads need ioeventfd 2021-03-18 22:39 ` [PATCH 4/4] iotests: iothreads need ioeventfd Laurent Vivier @ 2021-03-19 11:06 ` Paolo Bonzini 2021-03-19 11:27 ` Cornelia Huck 0 siblings, 1 reply; 16+ messages in thread From: Paolo Bonzini @ 2021-03-19 11:06 UTC (permalink / raw) To: Laurent Vivier, qemu-devel Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Cornelia Huck, Markus Armbruster, Max Reitz, qemu-s390x, Philippe Mathieu-Daudé On 18/03/21 23:39, Laurent Vivier wrote: > And ioeventfd are only available with virtio-scsi-pci, so don't use the alias > and add a rule to require virtio-scsi-pci for the tests that use iothreads. > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > --- > tests/qemu-iotests/127 | 4 ++-- > tests/qemu-iotests/256 | 2 ++ > tests/qemu-iotests/iotests.py | 5 +++++ > 3 files changed, 9 insertions(+), 2 deletions(-) > > diff --git a/tests/qemu-iotests/127 b/tests/qemu-iotests/127 > index 98e8e82a8210..a3693533685a 100755 > --- a/tests/qemu-iotests/127 > +++ b/tests/qemu-iotests/127 > @@ -44,7 +44,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 > _supported_fmt qcow2 > _supported_proto file fuse > > -_require_devices virtio-scsi scsi-hd > +_require_devices virtio-scsi-pci scsi-hd Maybe _require_devices scsi-hd _require_devices virtio-scsi-pci || _require_devices virtio-scsi ccw ? Paolo ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 4/4] iotests: iothreads need ioeventfd 2021-03-19 11:06 ` Paolo Bonzini @ 2021-03-19 11:27 ` Cornelia Huck 2021-03-19 11:28 ` Laurent Vivier 0 siblings, 1 reply; 16+ messages in thread From: Cornelia Huck @ 2021-03-19 11:27 UTC (permalink / raw) To: Paolo Bonzini Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, Markus Armbruster, Laurent Vivier, qemu-devel, qemu-s390x, Max Reitz, Philippe Mathieu-Daudé On Fri, 19 Mar 2021 12:06:43 +0100 Paolo Bonzini <pbonzini@redhat.com> wrote: > On 18/03/21 23:39, Laurent Vivier wrote: > > And ioeventfd are only available with virtio-scsi-pci, so don't use the alias > > and add a rule to require virtio-scsi-pci for the tests that use iothreads. > > > > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > > --- > > tests/qemu-iotests/127 | 4 ++-- > > tests/qemu-iotests/256 | 2 ++ > > tests/qemu-iotests/iotests.py | 5 +++++ > > 3 files changed, 9 insertions(+), 2 deletions(-) > > > > diff --git a/tests/qemu-iotests/127 b/tests/qemu-iotests/127 > > index 98e8e82a8210..a3693533685a 100755 > > --- a/tests/qemu-iotests/127 > > +++ b/tests/qemu-iotests/127 > > @@ -44,7 +44,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 > > _supported_fmt qcow2 > > _supported_proto file fuse > > > > -_require_devices virtio-scsi scsi-hd > > +_require_devices virtio-scsi-pci scsi-hd > > Maybe > > _require_devices scsi-hd > _require_devices virtio-scsi-pci || _require_devices virtio-scsi ccw > > ? > > Paolo > Yes, ioeventfds are also available for ccw; I'd expect only mmio to be the problem here. ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 4/4] iotests: iothreads need ioeventfd 2021-03-19 11:27 ` Cornelia Huck @ 2021-03-19 11:28 ` Laurent Vivier 0 siblings, 0 replies; 16+ messages in thread From: Laurent Vivier @ 2021-03-19 11:28 UTC (permalink / raw) To: Cornelia Huck, Paolo Bonzini Cc: Kevin Wolf, Peter Maydell, Thomas Huth, Daniel P. Berrangé, Eduardo Habkost, qemu-block, qemu-devel, Markus Armbruster, qemu-s390x, Max Reitz, Philippe Mathieu-Daudé Le 19/03/2021 à 12:27, Cornelia Huck a écrit : > On Fri, 19 Mar 2021 12:06:43 +0100 > Paolo Bonzini <pbonzini@redhat.com> wrote: > >> On 18/03/21 23:39, Laurent Vivier wrote: >>> And ioeventfd are only available with virtio-scsi-pci, so don't use the alias >>> and add a rule to require virtio-scsi-pci for the tests that use iothreads. >>> >>> Signed-off-by: Laurent Vivier <laurent@vivier.eu> >>> --- >>> tests/qemu-iotests/127 | 4 ++-- >>> tests/qemu-iotests/256 | 2 ++ >>> tests/qemu-iotests/iotests.py | 5 +++++ >>> 3 files changed, 9 insertions(+), 2 deletions(-) >>> >>> diff --git a/tests/qemu-iotests/127 b/tests/qemu-iotests/127 >>> index 98e8e82a8210..a3693533685a 100755 >>> --- a/tests/qemu-iotests/127 >>> +++ b/tests/qemu-iotests/127 >>> @@ -44,7 +44,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 >>> _supported_fmt qcow2 >>> _supported_proto file fuse >>> >>> -_require_devices virtio-scsi scsi-hd >>> +_require_devices virtio-scsi-pci scsi-hd >> >> Maybe >> >> _require_devices scsi-hd >> _require_devices virtio-scsi-pci || _require_devices virtio-scsi ccw >> >> ? >> >> Paolo >> > > Yes, ioeventfds are also available for ccw; I'd expect only mmio to be > the problem here. > OK, thanks. I update my patch with the changes from Paolo. Laurent ^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2021-03-19 12:11 UTC | newest] Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-03-18 22:39 [PATCH 0/4] iotests: fix failures with non-PCI machines Laurent Vivier 2021-03-18 22:39 ` [PATCH 1/4] m68k: add the virtio devices aliases Laurent Vivier 2021-03-18 22:51 ` Philippe Mathieu-Daudé 2021-03-19 6:47 ` Thomas Huth 2021-03-19 11:36 ` Cornelia Huck 2021-03-19 12:07 ` Laurent Vivier 2021-03-18 22:39 ` [PATCH 2/4] iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" Laurent Vivier 2021-03-19 10:39 ` Philippe Mathieu-Daudé 2021-03-19 11:43 ` Cornelia Huck 2021-03-19 12:09 ` Laurent Vivier 2021-03-18 22:39 ` [PATCH 3/4] iotests: test m68k with the virt machine Laurent Vivier 2021-03-18 22:46 ` Philippe Mathieu-Daudé 2021-03-18 22:39 ` [PATCH 4/4] iotests: iothreads need ioeventfd Laurent Vivier 2021-03-19 11:06 ` Paolo Bonzini 2021-03-19 11:27 ` Cornelia Huck 2021-03-19 11:28 ` Laurent Vivier
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).