[libvirt] [PATCH v3 19/26] tests: Add tests for pSeries guests with multiple PHBs

Laine Stump laine at laine.org
Tue Jun 27 02:03:10 UTC 2017


On 06/23/2017 11:03 AM, Andrea Bolognani wrote:
> Signed-off-by: Andrea Bolognani <abologna at redhat.com>
> ---
>  .../qemuxml2argv-pseries-phb-default-missing.args  | 22 +++++++++++++++
>  .../qemuxml2argv-pseries-phb-default-missing.xml   | 16 +++++++++++
>  .../qemuxml2argv-pseries-phb-simple.args           | 22 +++++++++++++++
>  .../qemuxml2argv-pseries-phb-simple.xml            | 17 +++++++++++
>  tests/qemuxml2argvtest.c                           |  8 ++++++
>  .../qemuxml2xmlout-pseries-phb-default-missing.xml | 33 ++++++++++++++++++++++
>  .../qemuxml2xmlout-pseries-phb-simple.xml          | 33 ++++++++++++++++++++++
>  tests/qemuxml2xmltest.c                            |  7 +++++
>  8 files changed, 158 insertions(+)
>  create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.args
>  create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.xml
>  create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.args
>  create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.xml
>  create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-default-missing.xml
>  create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-simple.xml
> 
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.args
> new file mode 100644
> index 0000000..009f5a8
> --- /dev/null
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.args
> @@ -0,0 +1,22 @@
> +LC_ALL=C \
> +PATH=/bin \
> +HOME=/home/test \
> +USER=test \
> +LOGNAME=test \
> +QEMU_AUDIO_DRV=none \
> +/usr/bin/qemu-system-ppc64 \
> +-name QEMUGuest1 \
> +-S \
> +-M pseries \
> +-m 512 \
> +-smp 1,sockets=1,cores=1,threads=1 \
> +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
> +-nographic \
> +-nodefconfig \
> +-nodefaults \
> +-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
> +server,nowait \
> +-mon chardev=charmonitor,id=monitor,mode=readline \
> +-boot c \
> +-device spapr-pci-host-bridge,index=1,id=pci.1 \
> +-device spapr-pci-host-bridge,index=2,id=pci.2
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.xml
> new file mode 100644
> index 0000000..d0b45bf
> --- /dev/null
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-default-missing.xml
> @@ -0,0 +1,16 @@
> +<domain type='qemu'>
> +  <name>QEMUGuest1</name>
> +  <uuid>1ccfd97d-5eb4-478a-bbe6-88d254c16db7</uuid>
> +  <memory unit='KiB'>524288</memory>
> +  <vcpu placement='static'>1</vcpu>
> +  <os>
> +    <type arch='ppc64' machine='pseries'>hvm</type>
> +  </os>
> +  <devices>
> +    <emulator>/usr/bin/qemu-system-ppc64</emulator>
> +    <controller type='pci' index='1' model='pci-root'/>
> +    <controller type='pci' index='2' model='pci-root'/>
> +    <controller type='usb' model='none'/>
> +    <memballoon model='none'/>
> +  </devices>
> +</domain>
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.args
> new file mode 100644
> index 0000000..009f5a8
> --- /dev/null
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.args
> @@ -0,0 +1,22 @@
> +LC_ALL=C \
> +PATH=/bin \
> +HOME=/home/test \
> +USER=test \
> +LOGNAME=test \
> +QEMU_AUDIO_DRV=none \
> +/usr/bin/qemu-system-ppc64 \
> +-name QEMUGuest1 \
> +-S \
> +-M pseries \
> +-m 512 \
> +-smp 1,sockets=1,cores=1,threads=1 \
> +-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
> +-nographic \
> +-nodefconfig \
> +-nodefaults \
> +-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
> +server,nowait \
> +-mon chardev=charmonitor,id=monitor,mode=readline \
> +-boot c \
> +-device spapr-pci-host-bridge,index=1,id=pci.1 \
> +-device spapr-pci-host-bridge,index=2,id=pci.2
> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.xml
> new file mode 100644
> index 0000000..b1c6ff3
> --- /dev/null
> +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.xml
> @@ -0,0 +1,17 @@
> +<domain type='qemu'>
> +  <name>QEMUGuest1</name>
> +  <uuid>1ccfd97d-5eb4-478a-bbe6-88d254c16db7</uuid>
> +  <memory unit='KiB'>524288</memory>
> +  <vcpu placement='static'>1</vcpu>
> +  <os>
> +    <type arch='ppc64' machine='pseries'>hvm</type>
> +  </os>
> +  <devices>
> +    <emulator>/usr/bin/qemu-system-ppc64</emulator>
> +    <controller type='pci' model='pci-root'/>
> +    <controller type='pci' model='pci-root'/>
> +    <controller type='pci' model='pci-root'/>
> +    <controller type='usb' model='none'/>
> +    <memballoon model='none'/>
> +  </devices>
> +</domain>
> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
> index 01c0a65..ff68884 100644
> --- a/tests/qemuxml2argvtest.c
> +++ b/tests/qemuxml2argvtest.c
> @@ -1709,6 +1709,14 @@ mymain(void)
>              QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG);
>      DO_TEST_FAILURE("pseries-panic-address",
>                      QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG);
> +
> +    DO_TEST("pseries-phb-simple",
> +            QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV,
> +            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
> +    DO_TEST("pseries-phb-default-missing",
> +            QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV,
> +            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
> +
>      DO_TEST("disk-ide-drive-split",
>              QEMU_CAPS_NODEFCONFIG,
>              QEMU_CAPS_IDE_CD);
> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-default-missing.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-default-missing.xml
> new file mode 100644
> index 0000000..62708b4
> --- /dev/null
> +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-default-missing.xml
> @@ -0,0 +1,33 @@
> +<domain type='qemu'>
> +  <name>QEMUGuest1</name>
> +  <uuid>1ccfd97d-5eb4-478a-bbe6-88d254c16db7</uuid>
> +  <memory unit='KiB'>524288</memory>
> +  <currentMemory unit='KiB'>524288</currentMemory>
> +  <vcpu placement='static'>1</vcpu>
> +  <os>
> +    <type arch='ppc64' machine='pseries'>hvm</type>
> +    <boot dev='hd'/>
> +  </os>
> +  <clock offset='utc'/>
> +  <on_poweroff>destroy</on_poweroff>
> +  <on_reboot>restart</on_reboot>
> +  <on_crash>destroy</on_crash>
> +  <devices>
> +    <emulator>/usr/bin/qemu-system-ppc64</emulator>
> +    <controller type='pci' index='1' model='pci-root'>
> +      <model name='spapr-pci-host-bridge'/>
> +      <target index='1'/>
> +    </controller>
> +    <controller type='pci' index='2' model='pci-root'>
> +      <model name='spapr-pci-host-bridge'/>
> +      <target index='2'/>
> +    </controller>
> +    <controller type='usb' index='0' model='none'/>
> +    <controller type='pci' index='0' model='pci-root'>
> +      <model name='spapr-pci-host-bridge'/>
> +      <target index='0'/>
> +    </controller>
> +    <memballoon model='none'/>
> +    <panic model='pseries'/>
> +  </devices>
> +</domain>
> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-simple.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-simple.xml
> new file mode 100644
> index 0000000..2c1e64e
> --- /dev/null
> +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-phb-simple.xml
> @@ -0,0 +1,33 @@
> +<domain type='qemu'>
> +  <name>QEMUGuest1</name>
> +  <uuid>1ccfd97d-5eb4-478a-bbe6-88d254c16db7</uuid>
> +  <memory unit='KiB'>524288</memory>
> +  <currentMemory unit='KiB'>524288</currentMemory>
> +  <vcpu placement='static'>1</vcpu>
> +  <os>
> +    <type arch='ppc64' machine='pseries'>hvm</type>
> +    <boot dev='hd'/>
> +  </os>
> +  <clock offset='utc'/>
> +  <on_poweroff>destroy</on_poweroff>
> +  <on_reboot>restart</on_reboot>
> +  <on_crash>destroy</on_crash>
> +  <devices>
> +    <emulator>/usr/bin/qemu-system-ppc64</emulator>
> +    <controller type='pci' index='0' model='pci-root'>
> +      <model name='spapr-pci-host-bridge'/>
> +      <target index='0'/>
> +    </controller>
> +    <controller type='pci' index='1' model='pci-root'>
> +      <model name='spapr-pci-host-bridge'/>
> +      <target index='1'/>
> +    </controller>
> +    <controller type='pci' index='2' model='pci-root'>
> +      <model name='spapr-pci-host-bridge'/>
> +      <target index='2'/>
> +    </controller>
> +    <controller type='usb' index='0' model='none'/>
> +    <memballoon model='none'/>
> +    <panic model='pseries'/>
> +  </devices>
> +</domain>
> diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c
> index c74614c..a0a846c 100644
> --- a/tests/qemuxml2xmltest.c
> +++ b/tests/qemuxml2xmltest.c
> @@ -676,6 +676,13 @@ mymain(void)
>      DO_TEST("pseries-panic-missing", NONE);
>      DO_TEST("pseries-panic-no-address", NONE);
>  
> +    DO_TEST("pseries-phb-simple",
> +            QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV,
> +            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
> +    DO_TEST("pseries-phb-default-missing",
> +            QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV,
> +            QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE);
> +

It's a constant source of annoyance that identical tests are copy-pasted
between qemuxml2argvtest.c and qemuxml2xmltest.c. But that's not your
problem.

Reviewed-by: Laine Stump <laine at laine.org>

>      DO_TEST("balloon-device-auto", NONE);
>      DO_TEST("balloon-device-period", NONE);
>      DO_TEST("channel-virtio-auto", NONE);
> 




More information about the libvir-list mailing list