[PATCH v7 00/12] qtests: Check accelerator available at runtime via QMP 'query-accels'

Philippe Mathieu-Daudé posted 12 patches 2 years, 11 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210505125806.1263441-1-philmd@redhat.com
Maintainers: Cornelia Huck <cohuck@redhat.com>, Thomas Huth <thuth@redhat.com>
There is a newer version of this series
qapi/machine.json              |  47 ++++++++++
tests/qtest/libqos/libqtest.h  |   8 ++
accel/accel-qmp.c              |  49 +++++++++++
tests/qtest/arm-cpu-features.c |  55 ++++--------
tests/qtest/bios-tables-test.c | 156 ++++++++++++++++-----------------
tests/qtest/libqtest.c         |  29 ++++++
tests/qtest/migration-test.c   |   4 +-
MAINTAINERS                    |   1 +
accel/meson.build              |   2 +-
tests/qtest/meson.build        |   3 +-
10 files changed, 232 insertions(+), 122 deletions(-)
create mode 100644 accel/accel-qmp.c
[PATCH v7 00/12] qtests: Check accelerator available at runtime via QMP 'query-accels'
Posted by Philippe Mathieu-Daudé 2 years, 11 months ago
Series fully reviewed.

Hi,

This series aims at having accelerator-independent qtests
by querying a QEMU instance at runtime to check the list
of built-in accelerators.

First we add the 'query-accels' QMP command,
then we add the qtest_has_accel() method to libqtest,
finally we use this new method to allow running
bios-tables-test on KVM-only builds.

Since v6:
- Fixed a typo (Eric)
- Added R-b tags

Since v5:
- Rename bios-tables tests (Igor)
- Do not restrict bios-tables tests to TCG (Igor)
- Reset bios-tables-test R-b tags

Since v4:
- Removed patch 10 (Markus, patch justification not clear)
  'qtest/qmp-cmd-test: Make test build-independent from accelerator'
- Removed patch 12 (Alex, icount / record/replay issue)
  'tests/meson: Only build softfloat objects if TCG is selected (again)'
- Sorted @Accelerator QAPI enum (Eric)
- Added R-b/T-b

Since v3:
- Added Markus review comments
- Added R-b/A-b tags

Since v2:
- Addressed Markus & Drew review comments
- Added qtest/migration-test patch

Since v1:
- Addressed Eric & Paolo review comments

Since v0:
- kept over-engineered union (I don't how to do simple enum)
- dropped arm-cpu-features patches for now
- fixed typos (Eric)
- rename qtest_has_accel (Thomas)
- probe accel with machine none previous qtest (Paolo)
- iterate over QAPI enum (Markus)

Eric's suggestion of conditional QAPI didn't worked out,
as accelerator definitions are poisoned.

Phil.

Philippe Mathieu-Daudé (12):
  MAINTAINERS: Add qtest/arm-cpu-features.c to ARM TCG CPUs section
  accel: Introduce 'query-accels' QMP command
  qtest: Add qtest_has_accel() method
  qtest/arm-cpu-features: Use generic qtest_has_accel() to check for KVM
  qtest/arm-cpu-features: Restrict sve_tests_sve_off_kvm test to KVM
  qtest/arm-cpu-features: Remove TCG fallback to KVM specific tests
  qtest/arm-cpu-features: Use generic qtest_has_accel() to check for TCG
  qtest/migration-test: Skip tests if KVM not builtin on s390x/ppc64
  qtest/bios-tables-test: Rename tests not TCG specific
  qtest/bios-tables-test: Rename TCG specific tests
  qtest/bios-tables-test: Make test build-independent from accelerator
  qtest: Do not restrict bios-tables-test to Aarch64 hosts anymore

 qapi/machine.json              |  47 ++++++++++
 tests/qtest/libqos/libqtest.h  |   8 ++
 accel/accel-qmp.c              |  49 +++++++++++
 tests/qtest/arm-cpu-features.c |  55 ++++--------
 tests/qtest/bios-tables-test.c | 156 ++++++++++++++++-----------------
 tests/qtest/libqtest.c         |  29 ++++++
 tests/qtest/migration-test.c   |   4 +-
 MAINTAINERS                    |   1 +
 accel/meson.build              |   2 +-
 tests/qtest/meson.build        |   3 +-
 10 files changed, 232 insertions(+), 122 deletions(-)
 create mode 100644 accel/accel-qmp.c

-- 
2.26.3


Re: [PATCH v7 00/12] qtests: Check accelerator available at runtime via QMP 'query-accels'
Posted by Philippe Mathieu-Daudé 2 years, 11 months ago
Hi Paolo,

On 5/5/21 2:57 PM, Philippe Mathieu-Daudé wrote:
> Series fully reviewed.

Igor made a comment on the last patch (qtest: Do not restrict
bios-tables-test to Aarch64 hosts anymore).

The following patches are the one helping Claudio's x86 TCG/KVM split:

 2> accel: Introduce 'query-accels' QMP command
 3> qtest: Add qtest_has_accel() method
 9> qtest/bios-tables-test: Rename tests not TCG specific
10> qtest/bios-tables-test: Rename TCG specific tests
11> qtest/bios-tables-test: Make test build-independent from accelerator

The rest are for his ARM TCG/KVM split.

You might queue 1-11, or only 2-3 & 9-11 for x86 and I'll resend the
rest via qemu-arm.

Thanks,

Phil.

> Philippe Mathieu-Daudé (12):
>   MAINTAINERS: Add qtest/arm-cpu-features.c to ARM TCG CPUs section
>   accel: Introduce 'query-accels' QMP command
>   qtest: Add qtest_has_accel() method
>   qtest/arm-cpu-features: Use generic qtest_has_accel() to check for KVM
>   qtest/arm-cpu-features: Restrict sve_tests_sve_off_kvm test to KVM
>   qtest/arm-cpu-features: Remove TCG fallback to KVM specific tests
>   qtest/arm-cpu-features: Use generic qtest_has_accel() to check for TCG
>   qtest/migration-test: Skip tests if KVM not builtin on s390x/ppc64
>   qtest/bios-tables-test: Rename tests not TCG specific
>   qtest/bios-tables-test: Rename TCG specific tests
>   qtest/bios-tables-test: Make test build-independent from accelerator
>   qtest: Do not restrict bios-tables-test to Aarch64 hosts anymore


Re: [PATCH v7 00/12] qtests: Check accelerator available at runtime via QMP 'query-accels'
Posted by Philippe Mathieu-Daudé 2 years, 11 months ago
On 5/5/21 3:20 PM, Philippe Mathieu-Daudé wrote:
> Hi Paolo,
> 
> On 5/5/21 2:57 PM, Philippe Mathieu-Daudé wrote:
>> Series fully reviewed.
> 
> Igor made a comment on the last patch (qtest: Do not restrict
> bios-tables-test to Aarch64 hosts anymore).
> 
> The following patches are the one helping Claudio's x86 TCG/KVM split:
> 
>  2> accel: Introduce 'query-accels' QMP command
>  3> qtest: Add qtest_has_accel() method
>  9> qtest/bios-tables-test: Rename tests not TCG specific
> 10> qtest/bios-tables-test: Rename TCG specific tests
> 11> qtest/bios-tables-test: Make test build-independent from accelerator
> 
> The rest are for his ARM TCG/KVM split.
> 
> You might queue 1-11, or only 2-3 & 9-11 for x86 and I'll resend the
> rest via qemu-arm.

And Markus made another comment, so please disregard this v7.