From: Thomas Huth <thuth@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: peterx@redhat.com, qemu-devel@nongnu.org,
"Daniel P . Berrangé" <berrange@redhat.com>,
"Fabiano Rosas" <farosas@suse.de>,
"Sebastian Ott" <sebott@redhat.com>,
"Eric Auger" <eric.auger@redhat.com>,
qemu-arm <qemu-arm@nongnu.org>
Subject: Re: [PATCH v2 1/3] tests/migration-test: Stick with gicv3 in aarch64 test
Date: Mon, 19 Feb 2024 15:20:55 +0100 [thread overview]
Message-ID: <0c7c448d-a651-4fa9-99d1-b08fcbaf5d5f@redhat.com> (raw)
In-Reply-To: <CAFEAcA-AVjn5JdG+6eBd69o5BiJjmA1G6i4F2wVPSmRSw-X=Yg@mail.gmail.com>
On 19/02/2024 13.50, Peter Maydell wrote:
> On Mon, 19 Feb 2024 at 11:54, Thomas Huth <thuth@redhat.com> wrote:
>>
>> On 07/02/2024 01.54, peterx@redhat.com wrote:
>>> From: Peter Xu <peterx@redhat.com>
>>>
>>> Recently we introduced cross-binary migration test. It's always wanted
>>> that migration-test uses stable guest ABI for both QEMU binaries in this
>>> case, so that both QEMU binaries will be compatible on the migration
>>> stream with the cmdline specified.
>>>
>>> Switch to a static gic version "3" rather than using version "max", so that
>>> GIC should be stable now across any future QEMU binaries for migration-test.
>>>
>>> Here the version can actually be anything as long as the ABI is stable. We
>>> choose "3" because it's the majority of what we already use in QEMU while
>>> still new enough: "git grep gic-version=3" shows 6 hit, while version 4 has
>>> no direct user yet besides "max".
>>>
>>> Note that even with this change, aarch64 won't be able to work yet with
>>> migration cross binary test, but then the only missing piece will be the
>>> stable CPU model.
>>>
>>> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
>>> Signed-off-by: Peter Xu <peterx@redhat.com>
>>> ---
>>> tests/qtest/migration-test.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c
>>> index 7675519cfa..8a5bb1752e 100644
>>> --- a/tests/qtest/migration-test.c
>>> +++ b/tests/qtest/migration-test.c
>>> @@ -819,7 +819,7 @@ static int test_migrate_start(QTestState **from, QTestState **to,
>>> } else if (strcmp(arch, "aarch64") == 0) {
>>> memory_size = "150M";
>>> machine_alias = "virt";
>>> - machine_opts = "gic-version=max";
>>> + machine_opts = "gic-version=3";
>>> arch_opts = g_strdup_printf("-cpu max -kernel %s", bootpath);
>>> start_address = ARM_TEST_MEM_START;
>>> end_address = ARM_TEST_MEM_END;
>>
>> Looks like the migration test now fails on aarch64 when "configure" has been
>> run with "--without-default-devices", since that disables the gicv3 in the
>> binary ... is there a way to check whether the gicv3 is available, and use
>> "=max" instead if it is not?
>
> A QEMU for AArch64 with no GICv3 is of very little practical use,
> so I'm not sure it makes sense to allow users to build one like that.
Ok, if it doesn't make too much sense to build without GICv3, maybe a patch
like this could be the right solution:
diff --git a/hw/intc/Kconfig b/hw/intc/Kconfig
--- a/hw/intc/Kconfig
+++ b/hw/intc/Kconfig
@@ -12,10 +12,6 @@ config IOAPIC
bool
select I8259
-config ARM_GIC
- bool
- select MSI_NONBROKEN
-
config OPENPIC
bool
select MSI_NONBROKEN
@@ -25,14 +21,18 @@ config APIC
select MSI_NONBROKEN
select I8259
+config ARM_GIC
+ bool
+ select ARM_GICV3_TCG if TCG
+ select ARM_GIC_KVM if KVM
+ select MSI_NONBROKEN
+
config ARM_GICV3_TCG
bool
- default y
depends on ARM_GIC && TCG
config ARM_GIC_KVM
bool
- default y
depends on ARM_GIC && KVM
config XICS
?
At least this seems to fix the the migration-test when compiling with
--without-default-devices.
Thomas
next prev parent reply other threads:[~2024-02-19 14:21 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-07 0:54 [PATCH v2 0/3] ci: Fixes on the recent cross-binary test case peterx
2024-02-07 0:54 ` [PATCH v2 1/3] tests/migration-test: Stick with gicv3 in aarch64 test peterx
2024-02-19 11:53 ` Thomas Huth
2024-02-19 12:50 ` Peter Maydell
2024-02-19 14:13 ` Fabiano Rosas
2024-02-19 14:20 ` Thomas Huth [this message]
2024-02-07 0:54 ` [PATCH v2 2/3] ci: Remove tag dependency for build-previous-qemu peterx
2024-02-07 0:54 ` [PATCH v2 3/3] ci: Update comment for migration-compat-aarch64 peterx
2024-02-08 2:46 ` [PATCH v2 0/3] ci: Fixes on the recent cross-binary test case Peter Xu
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=0c7c448d-a651-4fa9-99d1-b08fcbaf5d5f@redhat.com \
--to=thuth@redhat.com \
--cc=berrange@redhat.com \
--cc=eric.auger@redhat.com \
--cc=farosas@suse.de \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=sebott@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).