From: Fabiano Rosas <farosas@suse.de>
To: Peter Maydell <peter.maydell@linaro.org>,
"Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: qemu-devel@nongnu.org, qemu-arm@nongnu.org,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Richard Henderson" <richard.henderson@linaro.org>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Claudio Fontana" <cfontana@suse.de>,
"Eduardo Habkost" <ehabkost@redhat.com>,
"Alexander Graf" <agraf@csgraf.de>,
"Cornelia Huck" <cohuck@redhat.com>,
"Cleber Rosa" <crosa@redhat.com>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Beraldo Leal" <bleal@redhat.com>
Subject: Re: [PATCH RESEND v7 5/9] tests/avocado: Pass parameters to migration test
Date: Fri, 03 Mar 2023 17:59:29 -0300 [thread overview]
Message-ID: <87pm9pwnym.fsf@suse.de> (raw)
In-Reply-To: <CAFEAcA8p86BdbbO-thyov+A-dc98iygPx6nyCmnxinCRCuKviA@mail.gmail.com>
Peter Maydell <peter.maydell@linaro.org> writes:
> On Tue, 28 Feb 2023 at 19:28, Fabiano Rosas <farosas@suse.de> wrote:
>>
>> The migration tests are currently broken for an aarch64 host because
>> the tests pass no 'machine' and 'cpu' options on the QEMU command
>> line.
>>
>> Add a separate class to each architecture so that we can specify
>> 'machine' and 'cpu' options instead of relying on defaults.
>>
>> Add a skip decorator to keep the current behavior of only running
>> migration tests when the qemu target matches the host architecture.
>
> I still don't understand this patch. Don't we run the
> migration-test on all hosts already? David ?
>
We run on all hosts but for each host we only take the QEMU binary that
matches the host architecture. So if you want to test aarch64 migration,
you need an aarch64 host.
If you run on an x86_64 host (without this patch):
$ ../configure #all targets
$ make check-avocado AVOCADO_TESTS=../tests/avocado/migration.py
You'll see:
(1/3) ... migration.py:Migration.test_migration_with_tcp_localhost: PASS (0.21 s)
(2/3) ... migration.py:Migration.test_migration_with_unix: PASS (0.18 s)
(3/3) ... migration.py:Migration.test_migration_with_exec: PASS (0.21 s)
All three tests ran using qemu-system-x86_64.
The issue I'm trying to solve is that when run on a aarch64 host, the
test will fail because (being generic) it doesn't pass the '-machine
virt' option and there is no architecture-specific information in it at
all.
If we need to pass '-machine virt' to the arm machine, then something
needs to change to add architecture-specific knowledge into the test. My
first version hardcoded the usual "if arch == foo". That was frowned
upon, so this version creates a class for each architecture like other
tests do (e.g. boot_linux.py).
The downside of this is that we need to explicitly enumerate the host
architectures on which we want the test to run. I chose a few of the
obvious, but we might need to add more.
The upside is that we could now enable the test to run with all the
targets present in the build. If we remove the @skip decorators from
this patch, we'd get (note the arch strings):
(01/12) ... migration.py:Aarch64.test_migration_with_tcp_localhost: PASS (0.19 s)
(02/12) ... migration.py:Aarch64.test_migration_with_unix: PASS (0.16 s)
(03/12) ... migration.py:Aarch64.test_migration_with_exec: PASS (0.20 s)
^
(04/12) ... migration.py:X86_64.test_migration_with_tcp_localhost: PASS (0.21 s)
(05/12) ... migration.py:X86_64.test_migration_with_unix: PASS (0.18 s)
(06/12) ... migration.py:X86_64.test_migration_with_exec: PASS (0.21 s)
^
(07/12) ... migration.py:PPC64.test_migration_with_tcp_localhost: PASS (0.20 s)
(08/12) ... migration.py:PPC64.test_migration_with_unix: PASS (0.17 s)
(09/12) ... migration.py:PPC64.test_migration_with_exec: PASS (0.20 s)
^
next prev parent reply other threads:[~2023-03-03 21:00 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-28 19:26 [PATCH RESEND v7 0/9] target/arm: Allow CONFIG_TCG=n builds Fabiano Rosas
2023-02-28 19:26 ` [PATCH RESEND v7 1/9] target/arm: Move cortex sysregs into a separate file Fabiano Rosas
2023-03-01 1:21 ` Richard Henderson
2023-02-28 19:26 ` [PATCH RESEND v7 2/9] target/arm: Move 64-bit TCG CPUs into tcg/ Fabiano Rosas
2023-02-28 19:26 ` [PATCH RESEND v7 3/9] target/arm: Move aa32_max_features out of cpu_tcg.c Fabiano Rosas
2023-02-28 19:26 ` [PATCH RESEND v7 4/9] target/arm: move cpu_tcg to tcg/cpu32.c Fabiano Rosas
2023-03-01 13:06 ` Thomas Huth
2023-02-28 19:26 ` [PATCH RESEND v7 5/9] tests/avocado: Pass parameters to migration test Fabiano Rosas
2023-03-03 16:22 ` Peter Maydell
2023-03-03 20:59 ` Fabiano Rosas [this message]
2023-03-04 14:10 ` Peter Maydell
2023-03-06 17:06 ` Fabiano Rosas
2023-03-06 13:14 ` Dr. David Alan Gilbert
2023-02-28 19:26 ` [PATCH RESEND v7 6/9] arm/Kconfig: Always select SEMIHOSTING when TCG is present Fabiano Rosas
2023-02-28 19:26 ` [PATCH RESEND v7 7/9] arm/Kconfig: Do not build TCG-only boards on a KVM-only build Fabiano Rosas
2023-02-28 19:26 ` [PATCH RESEND v7 8/9] gitlab-ci: Check building KVM-only aarch64 target Fabiano Rosas
2023-02-28 19:26 ` [PATCH RESEND v7 9/9] tests/qtest: Fix tests when no KVM or TCG are present Fabiano Rosas
2023-03-01 12:14 ` Juan Quintela
2023-03-01 12:25 ` Fabiano Rosas
2023-03-01 12:57 ` Alex Bennée
2023-03-01 13:34 ` Fabiano Rosas
2023-03-01 13:04 ` Thomas Huth
2023-03-01 13:31 ` Fabiano Rosas
2023-03-01 13:43 ` Fabiano Rosas
2023-03-01 13:50 ` Thomas Huth
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=87pm9pwnym.fsf@suse.de \
--to=farosas@suse.de \
--cc=agraf@csgraf.de \
--cc=alex.bennee@linaro.org \
--cc=bleal@redhat.com \
--cc=cfontana@suse.de \
--cc=cohuck@redhat.com \
--cc=crosa@redhat.com \
--cc=dgilbert@redhat.com \
--cc=ehabkost@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=wainersm@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).