qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC 0/3] qtest: pick tests that require KVM at runtime


From: Claudio Fontana
Subject: Re: [RFC 0/3] qtest: pick tests that require KVM at runtime
Date: Tue, 22 Jun 2021 08:58:09 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0

On 6/18/21 5:58 PM, Igor Mammedov wrote:
> On Fri, 18 Jun 2021 13:26:47 +0200
> Igor Mammedov <imammedo@redhat.com> wrote:
> 
>> On Thu, 17 Jun 2021 18:49:17 +0200
>> Claudio Fontana <cfontana@suse.de> wrote:
> 
> [...]
> 
>>> Does this series work with --disable-kvm builds? (TCG-only builds?)  
>> I'll test. But on the first glance it should work without issues.
>> (i.e. kvm only tests will be skipped).
> 
> it didn't work, built fine but still tries to execute KVM test.
> Fixed v3 is on the way

I am thinking, what about doing the checks we need to do at the beginning of 
the tests,
and cache the results for all the tests, instead of checking every time?

This way we could use a more general implementation qtest_has_accel("kvm"), and 
mitigate its cost?

Thanks

C


> 
>>
>>>
>>> Thanks,
>>>
>>> CLaudio
>>>
>>>   
>>>>
>>>> For an example:
>>>>  test q35 machine with intel_iommu
>>>>  This test will run only is KVM is available and fail
>>>>  to start QEMU if it fallsback to TCG, thus failing whole test.
>>>>  So if test is executed in VM where nested KVM is not enabled
>>>>  or on other than x86 host, it will break 'make check-qtest'
>>>>
>>>> Series adds a lightweight qtest_has_kvm() check, which abuses
>>>> build system and should help to avoid running KVM only tests
>>>> on hosts that do not support it.
>>>>
>>>> PS:
>>>> there is an alternative 'query-accels' QMP command proposal
>>>> https://patchwork.kernel.org/project/qemu-devel/patch/20210503211020.894589-3-philmd@redhat.com/
>>>> which I think is more robust compared to qtest_has_kvm() and
>>>> could be extended to take into account machine type.
>>>> But it's more complex and what I dislike about it most,
>>>> it requires execution of 'probing' QEMU instance to find
>>>> execute 'query-accels' QMP command, which is rather resource
>>>> consuming. So I'd use query-accels approach only when it's
>>>> the only possible option to minimize load on CI systems.
>>>>
>>>> Igor Mammedov (2):
>>>>   tests: acpi: q35: test for x2APIC entries in SRAT
>>>>   tests: acpi: update expected tables blobs
>>>>
>>>> root (1):
>>>>   tests: qtest: add qtest_has_kvm() to check if tested bynary supports
>>>>     KVM
>>>>
>>>>  tests/qtest/libqos/libqtest.h    |   7 +++++++
>>>>  meson.build                      |   1 +
>>>>  tests/data/acpi/q35/APIC.numamem | Bin 0 -> 2686 bytes
>>>>  tests/data/acpi/q35/DSDT.numamem | Bin 7865 -> 35222 bytes
>>>>  tests/data/acpi/q35/FACP.numamem | Bin 0 -> 244 bytes
>>>>  tests/data/acpi/q35/SRAT.numamem | Bin 224 -> 5080 bytes
>>>>  tests/qtest/bios-tables-test.c   |  10 +++++++---
>>>>  tests/qtest/libqtest.c           |  20 ++++++++++++++++++++
>>>>  8 files changed, 35 insertions(+), 3 deletions(-)
>>>>  create mode 100644 tests/data/acpi/q35/APIC.numamem
>>>>  create mode 100644 tests/data/acpi/q35/FACP.numamem
>>>>     
>>>   
>>
>>
> 
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]