[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH v3 21/28] tests/qtest: Skip tests that depend on TCG when
From: |
Fabiano Rosas |
Subject: |
Re: [RFC PATCH v3 21/28] tests/qtest: Skip tests that depend on TCG when CONFIG_TCG=n |
Date: |
Tue, 17 Jan 2023 16:04:15 -0300 |
Cornelia Huck <cohuck@redhat.com> writes:
> On Fri, Jan 13 2023, Fabiano Rosas <farosas@suse.de> wrote:
>
>> Signed-off-by: Fabiano Rosas <farosas@suse.de>
>> ---
>> tests/qtest/arm-cpu-features.c | 24 ++++++++++++++++++++++++
>> 1 file changed, 24 insertions(+)
>>
>> diff --git a/tests/qtest/arm-cpu-features.c b/tests/qtest/arm-cpu-features.c
>> index 4be1415823..9a052e41fc 100644
>> --- a/tests/qtest/arm-cpu-features.c
>> +++ b/tests/qtest/arm-cpu-features.c
>> @@ -217,6 +217,15 @@ static void assert_bad_props(QTestState *qts, const
>> char *cpu_type)
>> qobject_unref(resp);
>> }
>>
>> +static bool tcg_disabled(void)
>> +{
>> +#ifndef CONFIG_TCG
>> + return true;
>> +#else
>> + return false;
>> +#endif
>> +}
>> +
>> static uint64_t resp_get_sve_vls(QDict *resp)
>> {
>> QDict *props;
>> @@ -338,6 +347,11 @@ static void sve_tests_sve_max_vq_8(const void *data)
>> {
>> QTestState *qts;
>>
>> + if (tcg_disabled()) {
>> + g_test_skip("TCG support disabled in this build");
>> + return;
>> + }
>> +
>> qts = qtest_init(MACHINE "-cpu max,sve-max-vq=8");
>>
>> assert_sve_vls(qts, "max", BIT_ULL(8) - 1, NULL);
>> @@ -373,6 +387,11 @@ static void sve_tests_sve_off(const void *data)
>> {
>> QTestState *qts;
>>
>> + if (tcg_disabled()) {
>> + g_test_skip("TCG support is disabled in this build");
>> + return;
>> + }
>> +
>> qts = qtest_init(MACHINE "-cpu max,sve=off");
>>
>> /* SVE is off, so the map should be empty. */
>
> I'm wondering whether the invocation of tcg and kvm test cases should be
> reorganized a bit. Currently, we have test cases that use MACHINE (tcg),
> and test cases that use MACHINE_KVM (kvm with a fallback to
> tcg). MACHINE_KVM is used either for aarch64 && kvm
> (test_query_cpu_model_expansion_kvm, which tests behaviour specific to
> kvm), or for aarch64 (sve_tests_sve_off_kvm, which tests behaviour that
> is the same for both kvm and tcg, and therefore tests tcg twice if kvm
> is not available.)
>
> So, should we
> - drop "-accel tcg" from MACHINE_KVM,
> - call sve_tests_sve_off_kvm only if kvm is available, and
> - call the functions you skip here conditionally on tcg being available
> instead? (not sure whether not calling should be preferred to skipping
> in general)
I did the last two already for the next version. Good point on dropping
"-accel tcg", I'll do that as well.
- Re: [RFC PATCH v3 18/28] target/arm: Move common cpu code into cpu.c, (continued)
- [RFC PATCH v3 19/28] target/arm: move cpu_tcg to tcg/cpu32.c, Fabiano Rosas, 2023/01/13
- [RFC PATCH v3 17/28] target/arm: Move cortex sysregs into cpregs.c, Fabiano Rosas, 2023/01/13
- [RFC PATCH v3 21/28] tests/qtest: Skip tests that depend on TCG when CONFIG_TCG=n, Fabiano Rosas, 2023/01/13
- [RFC PATCH v3 20/28] target/arm: Set cortex-a57 as default cpu for KVM-only build, Fabiano Rosas, 2023/01/13
- Re: [RFC PATCH v3 20/28] target/arm: Set cortex-a57 as default cpu for KVM-only build, Richard Henderson, 2023/01/13
- Re: [RFC PATCH v3 20/28] target/arm: Set cortex-a57 as default cpu for KVM-only build, Peter Maydell, 2023/01/16
[RFC PATCH v3 22/28] tests/qtest: Restrict bcm2835-dma-test to CONFIG_RASPI, Fabiano Rosas, 2023/01/13