All of lore.kernel.org
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@redhat.com>
Cc: "Laurent Vivier" <lvivier@redhat.com>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	"Thomas Huth" <thuth@redhat.com>,
	"Daniel P.Berrangé" <berrange@redhat.com>,
	"Eduardo Habkost" <ehabkost@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Juan Quintela" <quintela@redhat.com>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Andrew Jones" <drjones@redhat.com>,
	qemu-devel@nongnu.org, qemu-arm@nongnu.org,
	"Claudio Fontana" <cfontana@suse.de>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Igor Mammedov" <imammedo@redhat.com>,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>
Subject: Re: [PATCH v4 10/12] qtest/qmp-cmd-test: Make test build-independent from accelerator
Date: Sat, 01 May 2021 08:49:05 +0200	[thread overview]
Message-ID: <87fsz7kkym.fsf@dusky.pond.sub.org> (raw)
In-Reply-To: <32bc66bc-1ccf-c146-52ac-83c7b4913930@redhat.com> ("Philippe =?utf-8?Q?Mathieu-Daud=C3=A9=22's?= message of "Fri, 30 Apr 2021 17:48:05 +0200")

Philippe Mathieu-Daudé <philmd@redhat.com> writes:

> On 4/30/21 8:13 AM, Markus Armbruster wrote:
>> Philippe Mathieu-Daudé <philmd@redhat.com> writes:
>>> On 4/29/21 3:22 PM, Markus Armbruster wrote:
>>>> Philippe Mathieu-Daudé <philmd@redhat.com> writes:
>>>>>>> Now than we can probe if the TCG accelerator is available
>>>>>>> at runtime with a QMP command, do it once at the beginning
>>>>>>> and only register the tests we can run.
>>>>>>> We can then replace the #ifdef'ry by a runtime check.
>>>>>>>
>>>>>>> Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
>>>>>>> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>>>>>>
>>>>>> Please read the last remark first.  The other ones are detail; feel free
>>>>>> to skip them until we're done with the last one.
>>>>>>
>>>>>>> ---
>>>>>>>  tests/qtest/qmp-cmd-test.c | 18 ++++++++++++++----
>>>>>>>  1 file changed, 14 insertions(+), 4 deletions(-)
>>>>>
>>>>>>> +    tcg_accel_available = qtest_has_accel("tcg");
>>>>>>> +
>>>>>>
>>>>>> When does tcg_accel_available differ from defined(CONFIG_TCG)?
>>>>>
>>>>> qtest_has_accel("tcg") is a runtime check, while defined(CONFIG_TCG)
>>>>> is build-time.
>>>>
>>>> Let me rephrase my question: under what conditions can the values of
>>>> qtest_has_accel("tcg") and defined(CONFIG_TCG) differ?
>>>
>>> They are currently the same, so this patch is a no-op. *But* it
>>> allows us to remove the global dependence on CONFIG_TCG in the
>>> Meson machinery (see the last commit in this series).
>>>
>>> Is that missing part of the commit description?
>>>
>>> "This will allow us to remove the global CONFIG_TCG dependency
>>> in our Meson machinery in a pair of commits."?
>> 
>> Do you mean "in the next two commits"?
>
> Yes.
>
>> Please also note that the probing at run-time always gives the same
>> result as the compile-time check it replaces.
>> 
>> I don't understand what exactly the conversion to probing enables and
>> how, but I believe I don't have to.
>
> This series is removing some limitations in qtests to help Claudio work:
>
> x86: https://www.mail-archive.com/qemu-devel@nongnu.org/msg793885.html
> arm: https://www.mail-archive.com/qemu-devel@nongnu.org/msg799328.html
> s390x: https://www.mail-archive.com/qemu-devel@nongnu.org/msg800254.html
>
> which allow building with different sets of accelerators (and more).
>
> Claudio/Paolo could better explain :)

Will this lead to different values of qtest_has_accel("tcg") and
defined(CONFIG_TCG) within a single build tree?

> What I like from feature tested at runtime is we can run qtests using
> older binaries, binaries built with different configure flags, or the
> binaries installed by the distribution.

Running with binaries build from a different HEAD seems unlikely to be
useful.  Any failures are just as likely to be caused bu the version
mismatch as by actual bugs.  Binaries for the same HEAD built for
another configuration can be made to work (this patch doesn't yet
suffice), but why should I care?

What I don't like is yet another moving part.

I'm not sure this is a good trade.  Quite possibly because I still don't
fully understand what we're trying to accomplish here :)



  reply	other threads:[~2021-05-01  6:50 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-15 16:32 [PATCH v4 00/12] qtests: Check accelerator available at runtime via QMP 'query-accels' Philippe Mathieu-Daudé
2021-04-15 16:32 ` [PATCH v4 01/12] MAINTAINERS: Add qtest/arm-cpu-features.c to ARM TCG CPUs section Philippe Mathieu-Daudé
2021-04-16 18:06   ` Thomas Huth
2021-04-16 18:21   ` Philippe Mathieu-Daudé
2021-04-29 10:30   ` Alex Bennée
2021-04-15 16:32 ` [PATCH v4 02/12] accel: Introduce 'query-accels' QMP command Philippe Mathieu-Daudé
2021-04-29 14:50   ` Alex Bennée
2021-04-30 19:03   ` Eric Blake
2021-05-01 22:24     ` Philippe Mathieu-Daudé
2021-04-15 16:32 ` [PATCH v4 03/12] tests/qtest: Add qtest_has_accel() method Philippe Mathieu-Daudé
2021-04-29 14:52   ` Alex Bennée
2021-04-15 16:32 ` [PATCH v4 04/12] qtest/arm-cpu-features: Use generic qtest_has_accel() to check for KVM Philippe Mathieu-Daudé
2021-04-15 16:43   ` Andrew Jones
2021-04-29 14:59   ` Alex Bennée
2021-04-15 16:32 ` [PATCH v4 05/12] qtest/arm-cpu-features: Restrict sve_tests_sve_off_kvm test to KVM Philippe Mathieu-Daudé
2021-04-15 16:44   ` Andrew Jones
2021-04-30  9:51   ` Alex Bennée
2021-04-15 16:32 ` [PATCH v4 06/12] qtest/arm-cpu-features: Remove TCG fallback to KVM specific tests Philippe Mathieu-Daudé
2021-04-15 16:44   ` Andrew Jones
2021-04-30 10:19   ` Alex Bennée
2021-04-15 16:32 ` [PATCH v4 07/12] qtest/arm-cpu-features: Use generic qtest_has_accel() to check for TCG Philippe Mathieu-Daudé
2021-04-15 16:45   ` Andrew Jones
2021-04-30 10:20   ` Alex Bennée
2021-04-15 16:33 ` [PATCH v4 08/12] qtest/bios-tables-test: Make test build-independent from accelerator Philippe Mathieu-Daudé
2021-04-30 15:35   ` Alex Bennée
2021-04-15 16:33 ` [PATCH v4 09/12] qtest/migration-test: Skip tests if KVM not builtin on s390x/ppc64 Philippe Mathieu-Daudé
2021-04-16  4:33   ` David Gibson
2021-04-16 10:55   ` Greg Kurz
2021-04-16 11:58   ` Cornelia Huck
2021-04-30 15:37   ` Alex Bennée
2021-04-15 16:33 ` [PATCH v4 10/12] qtest/qmp-cmd-test: Make test build-independent from accelerator Philippe Mathieu-Daudé
2021-04-28 16:39   ` Philippe Mathieu-Daudé
2021-04-29  5:43   ` Markus Armbruster
2021-04-29  8:41     ` Philippe Mathieu-Daudé
2021-04-29 13:22       ` Markus Armbruster
2021-04-29 15:10         ` Philippe Mathieu-Daudé
2021-04-30  6:13           ` Markus Armbruster
2021-04-30 15:48             ` Philippe Mathieu-Daudé
2021-05-01  6:49               ` Markus Armbruster [this message]
2021-04-15 16:33 ` [PATCH v4 11/12] tests/qtest: Do not restrict bios-tables-test to Aarch64 hosts anymore Philippe Mathieu-Daudé
2021-04-30 17:21   ` Alex Bennée
2021-04-15 16:33 ` [PATCH v4 12/12] tests/meson: Only build softfloat objects if TCG is selected Philippe Mathieu-Daudé
2021-04-28 16:38   ` Philippe Mathieu-Daudé
2021-04-28 17:06     ` Alex Bennée
2021-04-28 17:32       ` Philippe Mathieu-Daudé
2021-04-28 19:04         ` Alex Bennée
2021-04-28 19:12           ` Philippe Mathieu-Daudé
2021-04-29 12:57             ` Philippe Mathieu-Daudé
2021-04-30 16:37   ` Alex Bennée

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87fsz7kkym.fsf@dusky.pond.sub.org \
    --to=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=cfontana@suse.de \
    --cc=dgilbert@redhat.com \
    --cc=drjones@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=imammedo@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=philmd@redhat.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=richard.henderson@linaro.org \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.