From 3a37af1e4144bcf0c18156ea3ebd2db73ff540da Mon Sep 17 00:00:00 2001 From: Andrea Bolognani Date: Thu, 2 Mar 2017 15:51:44 +0100 Subject: [PATCH] tests: Fix aliases for pSeries buses virQEMUCapsHasPCIMultiBus() performs a version check on the QEMU binary to figure out whether multiple buses are supported, so to get the correct aliases assigned when dealing with pSeries guests we need to spoof the version accordingly in the test suite. --- src/qemu/qemu_capabilities.c | 8 ++++++++ src/qemu/qemu_capspriv.h | 4 ++++ .../qemuxml2argv-memory-hotplug-ppc64-nonuma.args | 2 +- tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 2 +- .../qemuxml2argv-ppc64-usb-controller-legacy.args | 2 +- .../qemuxml2argv-ppc64-usb-controller.args | 4 ++-- tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args | 2 +- .../qemuxml2argv-pseries-usb-default.args | 2 +- tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-kbd.args | 2 +- .../qemuxml2argvdata/qemuxml2argv-pseries-usb-multi.args | 4 ++-- tests/qemuxml2argvtest.c | 5 +++++ 11 files changed, 27 insertions(+), 10 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 17964a1ad6..6e41509fc6 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2341,6 +2341,14 @@ virArch virQEMUCapsGetArch(virQEMUCapsPtr qemuCaps) } +void +virQEMUCapsSetVersion(virQEMUCapsPtr qemuCaps, + unsigned int version) +{ + qemuCaps->version = version; +} + + unsigned int virQEMUCapsGetVersion(virQEMUCapsPtr qemuCaps) { return qemuCaps->version; diff --git a/src/qemu/qemu_capspriv.h b/src/qemu/qemu_capspriv.h index 38b971e0e0..c1d36dba9b 100644 --- a/src/qemu/qemu_capspriv.h +++ b/src/qemu/qemu_capspriv.h @@ -69,6 +69,10 @@ void virQEMUCapsSetArch(virQEMUCapsPtr qemuCaps, virArch arch); +void +virQEMUCapsSetVersion(virQEMUCapsPtr qemuCaps, + unsigned int version); + void virQEMUCapsInitHostCPUModel(virQEMUCapsPtr qemuCaps, virCapsPtr caps); diff --git a/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args b/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args index 475b7214ec..781f30db0d 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args @@ -25,4 +25,4 @@ QEMU_AUDIO_DRV=none \ -append 'root=/dev/ram rw console=ttyS0,115200' \ -usb \ -serial pty \ --device virtio-balloon-pci,id=balloon0,bus=pci,addr=0x2 +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args b/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args index b1e7410732..58c1526cd0 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args @@ -22,4 +22,4 @@ QEMU_AUDIO_DRV=none \ -dtb /media/ram/test.dtb \ -usb \ -serial pty \ --device virtio-balloon-pci,id=balloon0,bus=pci,addr=0x2 +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller-legacy.args b/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller-legacy.args index bed5045fb7..9226c5e89f 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller-legacy.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller-legacy.args @@ -16,4 +16,4 @@ QEMU_AUDIO_DRV=none \ -monitor unix:/tmp/lib/domain--1-QEMUGuest1/monitor.sock,server,nowait \ -boot c \ -usb \ --device virtio-balloon-pci,id=balloon0,bus=pci,addr=0x6 +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller.args b/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller.args index 2ec223108c..157f5d9d4e 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-ppc64-usb-controller.args @@ -15,5 +15,5 @@ QEMU_AUDIO_DRV=none \ -nodefaults \ -monitor unix:/tmp/lib/domain--1-QEMUGuest1/monitor.sock,server,nowait \ -boot c \ --device pci-ohci,id=usb,bus=pci,addr=0x1 \ --device virtio-balloon-pci,id=balloon0,bus=pci,addr=0x6 +-device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args b/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args index 7dba956b41..d623836026 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args @@ -23,4 +23,4 @@ server,nowait \ -append 'root=/dev/ram rw console=ttyS0,115200' \ -usb \ -serial pty \ --device virtio-balloon-pci,id=balloon0,bus=pci,addr=0x2 +-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-default.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-default.args index 251e786e62..56e3552a8e 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-default.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-default.args @@ -19,6 +19,6 @@ server,nowait \ -mon chardev=charmonitor,id=monitor,mode=readline \ -no-acpi \ -boot c \ --device pci-ohci,id=usb,bus=pci,addr=0x1 \ +-device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ -chardev pty,id=charserial0 \ -device spapr-vty,chardev=charserial0,reg=0x30000000 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-kbd.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-kbd.args index 845128344f..1a672c62ab 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-kbd.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-kbd.args @@ -19,7 +19,7 @@ server,nowait \ -mon chardev=charmonitor,id=monitor,mode=readline \ -no-acpi \ -boot c \ --device pci-ohci,id=usb,bus=pci,addr=0x1 \ +-device pci-ohci,id=usb,bus=pci.0,addr=0x1 \ -chardev pty,id=charserial0 \ -device spapr-vty,chardev=charserial0,reg=0x30000000 \ -device usb-kbd,id=input0,bus=usb.0,port=1 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-multi.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-multi.args index 50e273b42f..7273891025 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-multi.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-multi.args @@ -19,7 +19,7 @@ server,nowait \ -mon chardev=charmonitor,id=monitor,mode=readline \ -no-acpi \ -boot c \ --device piix3-usb-uhci,id=usb,bus=pci,addr=0x1 \ --device pci-ohci,id=usb1,bus=pci,addr=0x2 \ +-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1 \ +-device pci-ohci,id=usb1,bus=pci.0,addr=0x2 \ -chardev pty,id=charserial0 \ -device spapr-vty,chardev=charserial0,reg=0x30000000 diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 3284f40922..b03644bdfa 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -381,6 +381,11 @@ testUpdateQEMUCaps(const struct testInfo *info, virQEMUCapsSetArch(info->qemuCaps, vm->def->os.arch); + /* We need to pretend QEMU 2.0.0 is in use so that pSeries guests + * will get the correct alias assigned to their buses. + * See virQEMUCapsHasPCIMultiBus() */ + virQEMUCapsSetVersion(info->qemuCaps, 2000000); + if (testAddCPUModels(info->qemuCaps, info->skipLegacyCPUs) < 0) goto cleanup; -- 2.39.5