mirror of https://gitee.com/openkylin/libvirt.git
tests: Add qemuxml2argv tests for PPC64 pseries machine
Add four tests of the XML -> argv handling for the PPC64 pseries machine. The first is just a basic test of a bare bones machine. The three others test various aspects of the spapr-vio address handling. It seems that currently we can't include network devices, doing so leads to a segfault because the network driverState is not initialised. Working around that leads us to the problem that the 'default' network doesn't exist. So for now just leave network devices out. Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
This commit is contained in:
parent
69dde2e653
commit
4b942fe860
|
@ -0,0 +1 @@
|
|||
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu-system-ppc64 -S -M pseries -m 512 -smp 1 -nographic -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/tmp/test-monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=readline -no-acpi -boot c -chardev pty,id=charserial0 -device spapr-vty,chardev=charserial0,reg=0x30000000 -usb
|
|
@ -0,0 +1,17 @@
|
|||
<domain type='qemu'>
|
||||
<name>QEMUGuest1</name>
|
||||
<uuid>1ccfd97d-5eb4-478a-bbe6-88d254c16db7</uuid>
|
||||
<memory>524288</memory>
|
||||
<vcpu>1</vcpu>
|
||||
<os>
|
||||
<type arch='ppc64' machine='pseries'>hvm</type>
|
||||
</os>
|
||||
<clock offset='utc'/>
|
||||
<devices>
|
||||
<emulator>/usr/bin/qemu-system-ppc64</emulator>
|
||||
<console type='pty'>
|
||||
<address type="spapr-vio"/>
|
||||
</console>
|
||||
<memballoon model="none"/>
|
||||
</devices>
|
||||
</domain>
|
|
@ -0,0 +1,42 @@
|
|||
<domain type='qemu'>
|
||||
<name>QEMUGuest1</name>
|
||||
<uuid>2754dd7b-ac8a-4850-aec0-1f3fcd43235b</uuid>
|
||||
<memory>524288</memory>
|
||||
<vcpu>1</vcpu>
|
||||
<os>
|
||||
<type arch='ppc64' machine='pseries'>hvm</type>
|
||||
</os>
|
||||
<clock offset='utc'/>
|
||||
<devices>
|
||||
<emulator>/usr/bin/qemu-system-ppc64</emulator>
|
||||
<console type='pty'>
|
||||
<address type="spapr-vio"/>
|
||||
</console>
|
||||
|
||||
<!-- Two serials, first is the console -->
|
||||
<serial type="pty">
|
||||
<address type="spapr-vio"/>
|
||||
</serial>
|
||||
<serial type="pty">
|
||||
<address type="spapr-vio" reg="0x4000"/>
|
||||
</serial>
|
||||
|
||||
<!-- One disk -->
|
||||
<disk type="file" device="disk">
|
||||
<driver name="qemu" type="raw"/>
|
||||
<source file="/tmp/scsidisk.img"/>
|
||||
<target dev="sda" bus="scsi"/>
|
||||
<address type="drive" controller="1"/>
|
||||
</disk>
|
||||
|
||||
<!-- Two SCSI controllers -->
|
||||
<controller type="scsi" index="1">
|
||||
<address type="spapr-vio"/>
|
||||
</controller>
|
||||
<controller type="scsi" index="0">
|
||||
<address type="spapr-vio" reg="0x4000"/>
|
||||
</controller>
|
||||
|
||||
<memballoon model="none"/>
|
||||
</devices>
|
||||
</domain>
|
|
@ -0,0 +1 @@
|
|||
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu-system-ppc64 -S -M pseries -m 512 -smp 1 -nographic -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/tmp/test-monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=readline -no-acpi -boot c -device spapr-vscsi,id=scsi0,reg=0x2000 -device spapr-vscsi,id=scsi1,reg=0x30000000 -drive file=/tmp/scsidisk.img,if=none,id=drive-scsi1-0-0 -device scsi-disk,bus=scsi1.0,scsi-id=0,drive=drive-scsi1-0-0,id=scsi1-0-0 -chardev pty,id=charserial0 -device spapr-vty,chardev=charserial0,reg=0x20000000 -chardev pty,id=charserial1 -device spapr-vty,chardev=charserial1,reg=0x30001000 -usb
|
|
@ -0,0 +1,42 @@
|
|||
<domain type='qemu'>
|
||||
<name>QEMUGuest1</name>
|
||||
<uuid>2754dd7b-ac8a-4850-aec0-1f3fcd43235b</uuid>
|
||||
<memory>524288</memory>
|
||||
<vcpu>1</vcpu>
|
||||
<os>
|
||||
<type arch='ppc64' machine='pseries'>hvm</type>
|
||||
</os>
|
||||
<clock offset='utc'/>
|
||||
<devices>
|
||||
<emulator>/usr/bin/qemu-system-ppc64</emulator>
|
||||
<console type='pty'>
|
||||
<address type="spapr-vio"/>
|
||||
</console>
|
||||
|
||||
<!-- Two serials, first is the console -->
|
||||
<serial type="pty">
|
||||
<address type="spapr-vio" reg="0x20000000"/>
|
||||
</serial>
|
||||
<serial type="pty">
|
||||
<address type="spapr-vio"/>
|
||||
</serial>
|
||||
|
||||
<!-- One disk -->
|
||||
<disk type="file" device="disk">
|
||||
<driver name="qemu" type="raw"/>
|
||||
<source file="/tmp/scsidisk.img"/>
|
||||
<target dev="sda" bus="scsi"/>
|
||||
<address type="drive" controller="1"/>
|
||||
</disk>
|
||||
|
||||
<!-- Two SCSI controllers -->
|
||||
<controller type="scsi" index="1">
|
||||
<address type="spapr-vio" reg="0x30000000"/>
|
||||
</controller>
|
||||
<controller type="scsi" index="0">
|
||||
<address type="spapr-vio"/>
|
||||
</controller>
|
||||
|
||||
<memballoon model="none"/>
|
||||
</devices>
|
||||
</domain>
|
|
@ -0,0 +1 @@
|
|||
LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu-system-ppc64 -S -M pseries -m 512 -smp 1 -nographic -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/tmp/test-monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=readline -no-acpi -boot c -device spapr-vscsi,id=scsi0,reg=0x2000 -device spapr-vscsi,id=scsi1,reg=0x3000 -drive file=/tmp/scsidisk.img,if=none,id=drive-scsi1-0-0 -device scsi-disk,bus=scsi1.0,scsi-id=0,drive=drive-scsi1-0-0,id=scsi1-0-0 -chardev pty,id=charserial0 -device spapr-vty,chardev=charserial0,reg=0x30000000 -chardev pty,id=charserial1 -device spapr-vty,chardev=charserial1,reg=0x30001000 -usb
|
|
@ -0,0 +1,42 @@
|
|||
<domain type='qemu'>
|
||||
<name>QEMUGuest1</name>
|
||||
<uuid>2754dd7b-ac8a-4850-aec0-1f3fcd43235b</uuid>
|
||||
<memory>524288</memory>
|
||||
<vcpu>1</vcpu>
|
||||
<os>
|
||||
<type arch='ppc64' machine='pseries'>hvm</type>
|
||||
</os>
|
||||
<clock offset='utc'/>
|
||||
<devices>
|
||||
<emulator>/usr/bin/qemu-system-ppc64</emulator>
|
||||
<console type='pty'>
|
||||
<address type="spapr-vio"/>
|
||||
</console>
|
||||
|
||||
<!-- Two serials, first is the console -->
|
||||
<serial type="pty">
|
||||
<address type="spapr-vio"/>
|
||||
</serial>
|
||||
<serial type="pty">
|
||||
<address type="spapr-vio"/>
|
||||
</serial>
|
||||
|
||||
<!-- One disk -->
|
||||
<disk type="file" device="disk">
|
||||
<driver name="qemu" type="raw"/>
|
||||
<source file="/tmp/scsidisk.img"/>
|
||||
<target dev="sda" bus="scsi"/>
|
||||
<address type="drive" controller="1"/>
|
||||
</disk>
|
||||
|
||||
<!-- Two SCSI controllers -->
|
||||
<controller type="scsi" index="1">
|
||||
<address type="spapr-vio"/>
|
||||
</controller>
|
||||
<controller type="scsi" index="0">
|
||||
<address type="spapr-vio"/>
|
||||
</controller>
|
||||
|
||||
<memballoon model="none"/>
|
||||
</devices>
|
||||
</domain>
|
|
@ -692,6 +692,15 @@ mymain(void)
|
|||
DO_TEST("seclabel-static", false, QEMU_CAPS_NAME);
|
||||
DO_TEST("seclabel-static-relabel", false, QEMU_CAPS_NAME);
|
||||
|
||||
DO_TEST("pseries-basic", false,
|
||||
QEMU_CAPS_CHARDEV, QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG);
|
||||
DO_TEST("pseries-vio", false, QEMU_CAPS_DRIVE,
|
||||
QEMU_CAPS_CHARDEV, QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG);
|
||||
DO_TEST("pseries-vio-user-assigned", false, QEMU_CAPS_DRIVE,
|
||||
QEMU_CAPS_CHARDEV, QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG);
|
||||
DO_TEST("pseries-vio-address-clash", true, QEMU_CAPS_DRIVE,
|
||||
QEMU_CAPS_CHARDEV, QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG);
|
||||
|
||||
free(driver.stateDir);
|
||||
virCapabilitiesFree(driver.caps);
|
||||
free(map);
|
||||
|
|
Loading…
Reference in New Issue