qemu-arm
[Top][All Lists]
Advanced

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

Re: [PATCH v2 1/3] tests/migration-test: Stick with gicv3 in aarch64 tes


From: Peter Maydell
Subject: Re: [PATCH v2 1/3] tests/migration-test: Stick with gicv3 in aarch64 test
Date: Mon, 19 Feb 2024 12:50:51 +0000

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.
(I'm also a little surprised that it worked with 'max', because
without a GICv3 it would try to fall back to GICv2, and if we're
going to allow users to compile-time disable one of the GICs then
we should definitely allow them to choose to not build GICv2.)

I think I would go for disabling the migration test entirely if
the build doesn't include the GICv3.

thanks
-- PMM



reply via email to

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