[libvirt] [PATCH v2 4/4] tests: check CPU features handling in libxl driver
Jim Fehlig
jfehlig at suse.com
Mon Jul 17 22:34:12 UTC 2017
On 07/03/2017 09:03 PM, Marek Marczykowski-Górecki wrote:
> Test enabling/disabling individual CPU features and also setting
> nested HVM support, which is also controlled by CPU features node.
>
> Signed-off-by: Marek Marczykowski-Górecki <marmarek at invisiblethingslab.com>
> ---
> Changes since v1:
> - rewritten to Jim's test suite for libxl_domain_config generator
This looks fine, but as you note depends on the "libxl: Add a test suite for
libxl_domain_config generator" patch. And that patch depends on a satisfactory
resolution to mocking the <emulator> checks as mentioned here
https://www.redhat.com/archives/libvir-list/2017-July/msg00541.html
I've stared at that problem too long and might be overlooking the obvious. Any
suggestions appreciated.
Regards,
Jim
>
> Cc: Jim Fehlig <jfehlig at suse.com>
> ---
> tests/libxlxml2domconfigdata/fullvirt-cpuid.json | 64 +++++++++++++++++-
> tests/libxlxml2domconfigdata/fullvirt-cpuid.xml | 37 ++++++++++-
> tests/libxlxml2domconfigtest.c | 1 +-
> 3 files changed, 102 insertions(+)
> create mode 100644 tests/libxlxml2domconfigdata/fullvirt-cpuid.json
> create mode 100644 tests/libxlxml2domconfigdata/fullvirt-cpuid.xml
>
> diff --git a/tests/libxlxml2domconfigdata/fullvirt-cpuid.json b/tests/libxlxml2domconfigdata/fullvirt-cpuid.json
> new file mode 100644
> index 0000000..234e592
> --- /dev/null
> +++ b/tests/libxlxml2domconfigdata/fullvirt-cpuid.json
> @@ -0,0 +1,64 @@
> +{
> + "c_info": {
> + "type": "hvm",
> + "name": "XenGuest2",
> + "uuid": "c7a5fdb2-cdaf-9455-926a-d65c16db1809"
> + },
> + "b_info": {
> + "max_vcpus": 1,
> + "avail_vcpus": [
> + 0
> + ],
> + "max_memkb": 592896,
> + "target_memkb": 403456,
> + "video_memkb": 8192,
> + "shadow_memkb": 5656,
> + "cpuid": [
> + {
> + "leaf": 1,
> + "ecx": "xxxxxxxxxxxxxxxxxxxxxxxxxx0xxxx0",
> + "edx": "xxxxxxxxxxxxxxxxxxxxxxxxxxx1xxxx"
> + }
> + ],
> + "sched_params": {
> + "weight": 1000
> + },
> + "type.hvm": {
> + "pae": "True",
> + "apic": "True",
> + "acpi": "True",
> + "vga": {
> +
> + },
> + "nested_hvm": "False",
> + "vnc": {
> + "enable": "False"
> + },
> + "sdl": {
> + "enable": "False"
> + },
> + "spice": {
> +
> + },
> + "boot": "c",
> + "rdm": {
> +
> + }
> + },
> + "arch_arm": {
> +
> + }
> + },
> + "disks": [
> + {
> + "pdev_path": "/dev/HostVG/XenGuest2",
> + "vdev": "hda",
> + "backend": "phy",
> + "format": "raw",
> + "removable": 1,
> + "readwrite": 1
> + }
> + ],
> + "on_reboot": "restart",
> + "on_crash": "restart"
> +}
> diff --git a/tests/libxlxml2domconfigdata/fullvirt-cpuid.xml b/tests/libxlxml2domconfigdata/fullvirt-cpuid.xml
> new file mode 100644
> index 0000000..e9eba2e
> --- /dev/null
> +++ b/tests/libxlxml2domconfigdata/fullvirt-cpuid.xml
> @@ -0,0 +1,37 @@
> +<domain type='xen'>
> + <name>XenGuest2</name>
> + <uuid>c7a5fdb2-cdaf-9455-926a-d65c16db1809</uuid>
> + <memory unit='KiB'>592896</memory>
> + <currentMemory unit='KiB'>403456</currentMemory>
> + <vcpu placement='static'>1</vcpu>
> + <os>
> + <type arch='x86_64' machine='xenfv'>hvm</type>
> + </os>
> + <features>
> + <acpi/>
> + <apic/>
> + <pae/>
> + </features>
> + <cpu mode='host-passthrough'>
> + <feature policy='forbid' name='pni'/>
> + <feature policy='forbid' name='vmx'/>
> + <feature policy='require' name='tsc'/>
> + </cpu>
> + <clock offset='variable' adjustment='0' basis='utc'/>
> + <on_poweroff>destroy</on_poweroff>
> + <on_reboot>restart</on_reboot>
> + <on_crash>restart</on_crash>
> + <devices>
> + <disk type='block' device='disk'>
> + <driver name='phy' type='raw'/>
> + <source dev='/dev/HostVG/XenGuest2'/>
> + <target dev='hda' bus='ide'/>
> + <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> + </disk>
> + <input type='mouse' bus='ps2'/>
> + <input type='keyboard' bus='ps2'/>
> + <video>
> + <model type='cirrus' vram='8192' heads='1' primary='yes'/>
> + </video>
> + </devices>
> +</domain>
> diff --git a/tests/libxlxml2domconfigtest.c b/tests/libxlxml2domconfigtest.c
> index ecdb1fe..1627e9e 100644
> --- a/tests/libxlxml2domconfigtest.c
> +++ b/tests/libxlxml2domconfigtest.c
> @@ -189,6 +189,7 @@ mymain(void)
> DO_TEST("basic-pv");
> DO_TEST("basic-hvm");
> DO_TEST("moredevs-hvm");
> + DO_TEST("fullvirt-cpuid");
>
> return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
> }
>
More information about the libvir-list
mailing list