On 06/23/2017 11:03 AM, Andrea Bolognani wrote: > These tests demonstrate that, while it's now possible for the > user to create PHB explicitly and manually assign devices to > them, libvirt still defaults to extending the guest PCI > topology using PCI bridges and making suboptimal device > placement choices. > > The next few commits will improve on these behaviors and the > tests outputs will automatically be updated to reflect this. > > Signed-off-by: Andrea Bolognani <abologna@xxxxxxxxxx> > --- > .../qemuxml2argv-pseries-hostdevs-1.args | 23 ++++ > .../qemuxml2argv-pseries-hostdevs-1.xml | 38 +++++++ > .../qemuxml2argv-pseries-hostdevs-2.args | 24 ++++ > .../qemuxml2argv-pseries-hostdevs-2.xml | 37 ++++++ > .../qemuxml2argv-pseries-hostdevs-3.args | 24 ++++ > .../qemuxml2argv-pseries-hostdevs-3.xml | 31 +++++ > .../qemuxml2argv-pseries-many-buses-1.args | 22 ++++ > .../qemuxml2argv-pseries-many-buses-1.xml | 19 ++++ > .../qemuxml2argv-pseries-many-buses-2.args | 22 ++++ > .../qemuxml2argv-pseries-many-buses-2.xml | 18 +++ > .../qemuxml2argv-pseries-many-devices.args | 53 +++++++++ > .../qemuxml2argv-pseries-many-devices.xml | 48 ++++++++ > tests/qemuxml2argvtest.c | 36 ++++++ > .../qemuxml2xmlout-pseries-hostdevs-1.xml | 46 ++++++++ > .../qemuxml2xmlout-pseries-hostdevs-2.xml | 47 ++++++++ > .../qemuxml2xmlout-pseries-hostdevs-3.xml | 49 ++++++++ > .../qemuxml2xmlout-pseries-many-buses-1.xml | 33 ++++++ > .../qemuxml2xmlout-pseries-many-buses-2.xml | 34 ++++++ > .../qemuxml2xmlout-pseries-many-devices.xml | 126 +++++++++++++++++++++ > tests/qemuxml2xmltest.c | 36 ++++++ > 20 files changed, 766 insertions(+) > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.xml > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-many-devices.args > create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-many-devices.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-1.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-2.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-3.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-1.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-2.xml > create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-devices.xml > > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.args > new file mode 100644 > index 0000000..88eb081 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.args > @@ -0,0 +1,23 @@ > +LC_ALL=C \ > +PATH=/bin \ > +HOME=/home/test \ > +USER=test \ > +LOGNAME=test \ > +QEMU_AUDIO_DRV=none \ > +/usr/bin/qemu-system-ppc64 \ > +-name guest \ > +-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-guest/monitor.sock,\ > +server,nowait \ > +-mon chardev=charmonitor,id=monitor,mode=readline \ > +-boot c \ > +-device vfio-pci,host=0001:01:00.0,id=hostdev0,bus=pci.0,addr=0x1 \ > +-device vfio-pci,host=0005:90:01.0,id=hostdev1,bus=pci.0,addr=0x2 \ > +-device vfio-pci,host=0001:01:00.1,id=hostdev2,bus=pci.0,addr=0x3 > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.xml > new file mode 100644 > index 0000000..87fe145 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-1.xml > @@ -0,0 +1,38 @@ > +<domain type='qemu'> > + <name>guest</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> > + <!-- This hostdev will cause a new PHB to be created because its > + isolation group is 2 --> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x0'/> > + </source> > + </hostdev> > + <!-- This hostdev can't share the PHB that was just created, because > + its isolation group is 3 --> I like the idea of putting comments in the test XML indicating exactly what we're testing for! Reviewed-by: Laine Stump <laine@xxxxxxxxx> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0005' bus='0x90' slot='0x01' function='0x0'/> > + </source> > + </hostdev> > + <!-- This hostdev will be placed on the first PHB, since its isolation > + group is 2 just like the first hostdev --> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x1'/> > + </source> > + </hostdev> > + <controller type='usb' model='none'/> > + <memballoon model='none'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.args > new file mode 100644 > index 0000000..c43e15d > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.args > @@ -0,0 +1,24 @@ > +LC_ALL=C \ > +PATH=/bin \ > +HOME=/home/test \ > +USER=test \ > +LOGNAME=test \ > +QEMU_AUDIO_DRV=none \ > +/usr/bin/qemu-system-ppc64 \ > +-name guest \ > +-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-guest/monitor.sock,\ > +server,nowait \ > +-mon chardev=charmonitor,id=monitor,mode=readline \ > +-boot c \ > +-device pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x1 \ > +-device virtio-scsi-pci,id=scsi0,bus=pci.1,addr=0x1 \ > +-device vfio-pci,host=0001:01:00.0,id=hostdev0,bus=pci.1,addr=0x2 \ > +-device vfio-pci,host=0005:90:01.0,id=hostdev1,bus=pci.0,addr=0x2 > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.xml > new file mode 100644 > index 0000000..551b588 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-2.xml > @@ -0,0 +1,37 @@ > +<domain type='qemu'> > + <name>guest</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> > + <!-- This device will cause a new PHB to be created because of its > + address --> > + <controller type='scsi' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/> > + </controller> > + <!-- This hostdev will share the same PHB as the SCSI controller > + despite being in a separate isolation group, because the > + address has been requested explicitly by the user --> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x0'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x02' function='0x0'/> > + </hostdev> > + <!-- This hostdev can use neither the PHB that was just created, nor > + the default one, because its isolation group is 3 --> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0005' bus='0x90' slot='0x01' function='0x0'/> > + </source> > + </hostdev> > + <controller type='usb' model='none'/> > + <memballoon model='none'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.args > new file mode 100644 > index 0000000..99df2e7 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.args > @@ -0,0 +1,24 @@ > +LC_ALL=C \ > +PATH=/bin \ > +HOME=/home/test \ > +USER=test \ > +LOGNAME=test \ > +QEMU_AUDIO_DRV=none \ > +/usr/bin/qemu-system-ppc64 \ > +-name guest \ > +-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-guest/monitor.sock,\ > +server,nowait \ > +-mon chardev=charmonitor,id=monitor,mode=readline \ > +-boot c \ > +-device pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x1 \ > +-device pci-bridge,chassis_nr=2,id=pci.2,bus=pci.0,addr=0x2 \ > +-device vfio-pci,host=0001:01:00.0,id=hostdev0,bus=pci.2,addr=0x1 \ > +-device vfio-pci,host=0001:01:00.1,id=hostdev1,bus=pci.0,addr=0x3 > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.xml > new file mode 100644 > index 0000000..0e61a17 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-hostdevs-3.xml > @@ -0,0 +1,31 @@ > +<domain type='qemu'> > + <name>guest</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> > + <!-- This hostdev will cause a new PHB to be created because its > + isolation group is 2. It will be PHB 2 due to the address --> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x0'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/> > + </hostdev> > + <!-- This hostdev will be placed on the same PHB, since its isolation > + group is also 2 --> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x1'/> > + </source> > + </hostdev> > + <controller type='usb' model='none'/> > + <memballoon model='none'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.args > new file mode 100644 > index 0000000..bf78fc1 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.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 guest \ > +-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-guest/monitor.sock,\ > +server,nowait \ > +-mon chardev=charmonitor,id=monitor,mode=readline \ > +-boot c \ > +-device pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x1 \ > +-device virtio-scsi-pci,id=scsi0,bus=pci.1,addr=0x1 > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.xml > new file mode 100644 > index 0000000..c52349d > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-1.xml > @@ -0,0 +1,19 @@ > +<domain type='qemu'> > + <name>guest</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> > + <!-- The SCSI controller is plugged into PCI bus 1, but since said bus > + is not present in the configuration libvirt will have to add it --> > + <controller type='scsi' model='virtio-scsi'> > + <address type='pci' bus='1' slot='1'/> > + </controller> > + <controller type='usb' model='none'/> > + <memballoon model='none'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.args > new file mode 100644 > index 0000000..1cb5831 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.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 guest \ > +-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-guest/monitor.sock,\ > +server,nowait \ > +-mon chardev=charmonitor,id=monitor,mode=readline \ > +-boot c \ > +-device spapr-pci-host-bridge,index=1,id=pci.2 \ > +-device pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x1 > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.xml > new file mode 100644 > index 0000000..7065626 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-buses-2.xml > @@ -0,0 +1,18 @@ > +<domain type='qemu'> > + <name>guest</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> > + <!-- PCI buses 0 and 2 are present in the configuration, libvirt will > + have to fill in the blanks and add bus 1 --> > + <controller type='pci' index='0' 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-many-devices.args b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-devices.args > new file mode 100644 > index 0000000..1db4533 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-devices.args > @@ -0,0 +1,53 @@ > +LC_ALL=C \ > +PATH=/bin \ > +HOME=/home/test \ > +USER=test \ > +LOGNAME=test \ > +QEMU_AUDIO_DRV=none \ > +/usr/bin/qemu-system-ppc64 \ > +-name guest \ > +-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-guest/monitor.sock,\ > +server,nowait \ > +-mon chardev=charmonitor,id=monitor,mode=readline \ > +-boot c \ > +-device pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x1 \ > +-device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x2 \ > +-device virtio-scsi-pci,id=scsi1,bus=pci.0,addr=0x3 \ > +-device virtio-scsi-pci,id=scsi2,bus=pci.0,addr=0x4 \ > +-device virtio-scsi-pci,id=scsi3,bus=pci.0,addr=0x5 \ > +-device virtio-scsi-pci,id=scsi4,bus=pci.0,addr=0x6 \ > +-device virtio-scsi-pci,id=scsi5,bus=pci.0,addr=0x7 \ > +-device virtio-scsi-pci,id=scsi6,bus=pci.0,addr=0x8 \ > +-device virtio-scsi-pci,id=scsi7,bus=pci.0,addr=0x9 \ > +-device virtio-scsi-pci,id=scsi8,bus=pci.0,addr=0xa \ > +-device virtio-scsi-pci,id=scsi9,bus=pci.0,addr=0xb \ > +-device virtio-scsi-pci,id=scsi10,bus=pci.0,addr=0xc \ > +-device virtio-scsi-pci,id=scsi11,bus=pci.0,addr=0xd \ > +-device virtio-scsi-pci,id=scsi12,bus=pci.0,addr=0xe \ > +-device virtio-scsi-pci,id=scsi13,bus=pci.0,addr=0xf \ > +-device virtio-scsi-pci,id=scsi14,bus=pci.0,addr=0x10 \ > +-device virtio-scsi-pci,id=scsi15,bus=pci.0,addr=0x11 \ > +-device virtio-scsi-pci,id=scsi16,bus=pci.0,addr=0x12 \ > +-device virtio-scsi-pci,id=scsi17,bus=pci.0,addr=0x13 \ > +-device virtio-scsi-pci,id=scsi18,bus=pci.0,addr=0x14 \ > +-device virtio-scsi-pci,id=scsi19,bus=pci.0,addr=0x15 \ > +-device virtio-scsi-pci,id=scsi20,bus=pci.0,addr=0x16 \ > +-device virtio-scsi-pci,id=scsi21,bus=pci.0,addr=0x17 \ > +-device virtio-scsi-pci,id=scsi22,bus=pci.0,addr=0x18 \ > +-device virtio-scsi-pci,id=scsi23,bus=pci.0,addr=0x19 \ > +-device virtio-scsi-pci,id=scsi24,bus=pci.0,addr=0x1a \ > +-device virtio-scsi-pci,id=scsi25,bus=pci.0,addr=0x1b \ > +-device virtio-scsi-pci,id=scsi26,bus=pci.0,addr=0x1c \ > +-device virtio-scsi-pci,id=scsi27,bus=pci.0,addr=0x1d \ > +-device virtio-scsi-pci,id=scsi28,bus=pci.0,addr=0x1e \ > +-device virtio-scsi-pci,id=scsi29,bus=pci.0,addr=0x1f \ > +-device virtio-scsi-pci,id=scsi30,bus=pci.1,addr=0x1 \ > +-device virtio-scsi-pci,id=scsi31,bus=pci.1,addr=0x2 > diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-devices.xml b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-devices.xml > new file mode 100644 > index 0000000..f3daba4 > --- /dev/null > +++ b/tests/qemuxml2argvdata/qemuxml2argv-pseries-many-devices.xml > @@ -0,0 +1,48 @@ > +<domain type='qemu'> > + <name>guest</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> > + <!-- pci-root has 31 slots and there are 32 SCSI controllers here, so > + libvirt will automatically add at least one more PCI controller --> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='scsi' model='virtio-scsi'/> > + <controller type='usb' model='none'/> > + <memballoon model='none'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c > index ff68884..137f59a 100644 > --- a/tests/qemuxml2argvtest.c > +++ b/tests/qemuxml2argvtest.c > @@ -1717,6 +1717,42 @@ mymain(void) > QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV, > QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE); > > + DO_TEST("pseries-many-devices", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI); > + DO_TEST("pseries-many-buses-1", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI); > + DO_TEST("pseries-many-buses-2", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI); > + DO_TEST("pseries-hostdevs-1", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_HOST_PCI_MULTIDOMAIN, > + QEMU_CAPS_VIRTIO_SCSI, > + QEMU_CAPS_DEVICE_VFIO_PCI); > + DO_TEST("pseries-hostdevs-2", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_HOST_PCI_MULTIDOMAIN, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI, > + QEMU_CAPS_DEVICE_VFIO_PCI); > + DO_TEST("pseries-hostdevs-3", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_HOST_PCI_MULTIDOMAIN, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI, > + QEMU_CAPS_DEVICE_VFIO_PCI); > + > DO_TEST("disk-ide-drive-split", > QEMU_CAPS_NODEFCONFIG, > QEMU_CAPS_IDE_CD); > diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-1.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-1.xml > new file mode 100644 > index 0000000..34defea > --- /dev/null > +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-1.xml > @@ -0,0 +1,46 @@ > +<domain type='qemu'> > + <name>guest</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='usb' index='0' model='none'/> > + <controller type='pci' index='0' model='pci-root'> > + <model name='spapr-pci-host-bridge'/> > + <target index='0'/> > + </controller> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x0'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> > + </hostdev> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0005' bus='0x90' slot='0x01' function='0x0'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> > + </hostdev> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x1'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> > + </hostdev> > + <memballoon model='none'/> > + <panic model='pseries'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-2.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-2.xml > new file mode 100644 > index 0000000..62bead5 > --- /dev/null > +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-2.xml > @@ -0,0 +1,47 @@ > +<domain type='qemu'> > + <name>guest</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='scsi' index='0' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/> > + </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> > + <controller type='pci' index='1' model='pci-bridge'> > + <model name='pci-bridge'/> > + <target chassisNr='1'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> > + </controller> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x0'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x02' function='0x0'/> > + </hostdev> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0005' bus='0x90' slot='0x01' function='0x0'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> > + </hostdev> > + <memballoon model='none'/> > + <panic model='pseries'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-3.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-3.xml > new file mode 100644 > index 0000000..77c0909 > --- /dev/null > +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-hostdevs-3.xml > @@ -0,0 +1,49 @@ > +<domain type='qemu'> > + <name>guest</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='usb' index='0' model='none'/> > + <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-bridge'> > + <model name='pci-bridge'/> > + <target chassisNr='1'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> > + </controller> > + <controller type='pci' index='2' model='pci-bridge'> > + <model name='pci-bridge'/> > + <target chassisNr='2'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> > + </controller> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x0'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/> > + </hostdev> > + <hostdev mode='subsystem' type='pci' managed='yes'> > + <driver name='vfio'/> > + <source> > + <address domain='0x0001' bus='0x01' slot='0x00' function='0x1'/> > + </source> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> > + </hostdev> > + <memballoon model='none'/> > + <panic model='pseries'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-1.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-1.xml > new file mode 100644 > index 0000000..9044936 > --- /dev/null > +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-1.xml > @@ -0,0 +1,33 @@ > +<domain type='qemu'> > + <name>guest</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='scsi' index='0' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/> > + </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> > + <controller type='pci' index='1' model='pci-bridge'> > + <model name='pci-bridge'/> > + <target chassisNr='1'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> > + </controller> > + <memballoon model='none'/> > + <panic model='pseries'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-2.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-2.xml > new file mode 100644 > index 0000000..75dfabf > --- /dev/null > +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-buses-2.xml > @@ -0,0 +1,34 @@ > +<domain type='qemu'> > + <name>guest</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='2' model='pci-root'> > + <model name='spapr-pci-host-bridge'/> > + <target index='1'/> > + </controller> > + <controller type='usb' index='0' model='none'/> > + <controller type='pci' index='1' model='pci-bridge'> > + <model name='pci-bridge'/> > + <target chassisNr='1'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> > + </controller> > + <memballoon model='none'/> > + <panic model='pseries'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-devices.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-devices.xml > new file mode 100644 > index 0000000..b596fe6 > --- /dev/null > +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-pseries-many-devices.xml > @@ -0,0 +1,126 @@ > +<domain type='qemu'> > + <name>guest</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='scsi' index='0' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> > + </controller> > + <controller type='scsi' index='1' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> > + </controller> > + <controller type='scsi' index='2' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> > + </controller> > + <controller type='scsi' index='3' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> > + </controller> > + <controller type='scsi' index='4' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> > + </controller> > + <controller type='scsi' index='5' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> > + </controller> > + <controller type='scsi' index='6' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/> > + </controller> > + <controller type='scsi' index='7' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/> > + </controller> > + <controller type='scsi' index='8' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/> > + </controller> > + <controller type='scsi' index='9' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x0b' function='0x0'/> > + </controller> > + <controller type='scsi' index='10' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x0c' function='0x0'/> > + </controller> > + <controller type='scsi' index='11' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x0d' function='0x0'/> > + </controller> > + <controller type='scsi' index='12' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x0e' function='0x0'/> > + </controller> > + <controller type='scsi' index='13' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x0f' function='0x0'/> > + </controller> > + <controller type='scsi' index='14' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x10' function='0x0'/> > + </controller> > + <controller type='scsi' index='15' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x11' function='0x0'/> > + </controller> > + <controller type='scsi' index='16' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x12' function='0x0'/> > + </controller> > + <controller type='scsi' index='17' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x13' function='0x0'/> > + </controller> > + <controller type='scsi' index='18' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x14' function='0x0'/> > + </controller> > + <controller type='scsi' index='19' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x15' function='0x0'/> > + </controller> > + <controller type='scsi' index='20' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x16' function='0x0'/> > + </controller> > + <controller type='scsi' index='21' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x17' function='0x0'/> > + </controller> > + <controller type='scsi' index='22' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x18' function='0x0'/> > + </controller> > + <controller type='scsi' index='23' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x19' function='0x0'/> > + </controller> > + <controller type='scsi' index='24' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1a' function='0x0'/> > + </controller> > + <controller type='scsi' index='25' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1b' function='0x0'/> > + </controller> > + <controller type='scsi' index='26' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1c' function='0x0'/> > + </controller> > + <controller type='scsi' index='27' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1d' function='0x0'/> > + </controller> > + <controller type='scsi' index='28' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/> > + </controller> > + <controller type='scsi' index='29' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x0'/> > + </controller> > + <controller type='scsi' index='30' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/> > + </controller> > + <controller type='scsi' index='31' model='virtio-scsi'> > + <address type='pci' domain='0x0000' bus='0x01' slot='0x02' function='0x0'/> > + </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> > + <controller type='pci' index='1' model='pci-bridge'> > + <model name='pci-bridge'/> > + <target chassisNr='1'/> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> > + </controller> > + <memballoon model='none'/> > + <panic model='pseries'/> > + </devices> > +</domain> > diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c > index a0a846c..312e2b1 100644 > --- a/tests/qemuxml2xmltest.c > +++ b/tests/qemuxml2xmltest.c > @@ -683,6 +683,42 @@ mymain(void) > QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV, > QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE); > > + DO_TEST("pseries-many-devices", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI); > + DO_TEST("pseries-many-buses-1", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI); > + DO_TEST("pseries-many-buses-2", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI); > + DO_TEST("pseries-hostdevs-1", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_HOST_PCI_MULTIDOMAIN, > + QEMU_CAPS_VIRTIO_SCSI, > + QEMU_CAPS_DEVICE_VFIO_PCI); > + DO_TEST("pseries-hostdevs-2", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_HOST_PCI_MULTIDOMAIN, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI, > + QEMU_CAPS_DEVICE_VFIO_PCI); > + DO_TEST("pseries-hostdevs-3", > + QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, > + QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE, > + QEMU_CAPS_HOST_PCI_MULTIDOMAIN, > + QEMU_CAPS_DEVICE_PCI_BRIDGE, > + QEMU_CAPS_VIRTIO_SCSI, > + QEMU_CAPS_DEVICE_VFIO_PCI); > + > DO_TEST("balloon-device-auto", NONE); > DO_TEST("balloon-device-period", NONE); > DO_TEST("channel-virtio-auto", NONE); > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list