[libvirt] [PATCH 11/41] qemu: Separate guest CPU validation from command line creation
John Ferlan
jferlan at redhat.com
Mon Aug 29 19:21:43 UTC 2016
On 08/12/2016 09:33 AM, Jiri Denemark wrote:
> qemu_command.c should deal with translating our domain definition into a
> QEMU command line and nothing else.
>
> Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
> ---
> src/qemu/qemu_command.c | 71 ++++----------------------------
> src/qemu/qemu_process.c | 105 +++++++++++++++++++++++++++++++++++++++++++++++
> tests/qemuxml2argvtest.c | 8 ++--
> 3 files changed, 117 insertions(+), 67 deletions(-)
>
[...]
> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
> index f9ed6f5..2b94ff0 100644
> --- a/tests/qemuxml2argvtest.c
> +++ b/tests/qemuxml2argvtest.c
> @@ -1394,13 +1394,13 @@ mymain(void)
> DO_TEST_FAILURE("cpu-host-passthrough", NONE);
> DO_TEST_FAILURE("cpu-qemu-host-passthrough", QEMU_CAPS_KVM);
>
> - driver.caps->host.cpu = cpuHaswell;
> + qemuTestSetHostCPU(driver.caps, cpuHaswell);
> DO_TEST("cpu-Haswell", QEMU_CAPS_KVM);
> DO_TEST("cpu-Haswell2", QEMU_CAPS_KVM);
> DO_TEST("cpu-Haswell3", QEMU_CAPS_KVM);
> DO_TEST("cpu-Haswell-noTSX", QEMU_CAPS_KVM);
> DO_TEST("cpu-host-model-cmt", NONE);
> - driver.caps->host.cpu = cpuDefault;
> + qemuTestSetHostCPU(driver.caps, NULL);
Adding this to the previous patch seems to work, but...
>
> DO_TEST("encrypted-disk", NONE);
> DO_TEST("encrypted-disk-usage", NONE);
> @@ -1947,14 +1947,14 @@ mymain(void)
> QEMU_CAPS_KVM, QEMU_CAPS_MACHINE_OPT,
> QEMU_CAPS_MACH_VIRT_GIC_VERSION);
>
> - driver.caps->host.cpu->arch = VIR_ARCH_AARCH64;
> + qemuTestSetHostArch(driver.caps, VIR_ARCH_AARCH64);
> DO_TEST("aarch64-kvm-32-on-64",
> QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIRTIO_MMIO,
> QEMU_CAPS_KVM, QEMU_CAPS_CPU_AARCH64_OFF);
> DO_TEST_FAILURE("aarch64-kvm-32-on-64",
> QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIRTIO_MMIO,
> QEMU_CAPS_KVM);
> - driver.caps->host.cpu->arch = cpuDefault->arch;
> + qemuTestSetHostArch(driver.caps, VIR_ARCH_NONE);
Adding this one causes failure... Perhaps due to the:
+ if (cpu)
+ caps->host.arch = cpu->arch;
in previous patch? or perhaps some shortly subsequent patch...
It's not so much an objection to the patch, but by simply adding those
API's in patch 10 I guess I would have expected them to just work, but
trial and error proves otherwise. Of course reading future patches
perhaps sheds even more light (or black magic, voodoo) ;-).
>
> DO_TEST("kvm-pit-device", QEMU_CAPS_KVM_PIT_TICK_POLICY);
> DO_TEST("kvm-pit-delay", QEMU_CAPS_NO_KVM_PIT);
>
More information about the libvir-list
mailing list