[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH-for-9.1 09/21] qapi: Merge machine-common.json with qapi/mach
From: |
Markus Armbruster |
Subject: |
Re: [PATCH-for-9.1 09/21] qapi: Merge machine-common.json with qapi/machine.json |
Date: |
Tue, 26 Mar 2024 13:12:05 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Philippe Mathieu-Daudé <philmd@linaro.org> writes:
> machine-common.json declares a single type, which isn't
> restricted to a particular target. Move this type in
> machine.json.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Previous discussion at
https://lore.kernel.org/qemu-devel/875y45kt8i.fsf@pond.sub.org/
CpuS390Entitlement is specific to s390x. We need it for
set-cpu-topology and the s390x-specific part of query-cpus-fast. The
former is conditional on TARGET_S390X, and therefore must be in
machine-target.json. The latter is not conditional, and in
machine.json. If I remember correctly, I briefly explored making it
conditional, but it was too messy to be worth the bother.
Anyway. We have a target-specific type we want to use both in
machine.json and machine-target.json. Neither of the two includes the
other. Target-independent machine.json cannot include target-specific
machine-target.json. Two solutions:
1. Define the type in machine.json, have machine-target.json include
machine.json. Ugly: even more target-stuff in machine.json.
Potentially slow: including qapi/qapi-*-machine-target.h now includes
more.
2. Define the type in a submodule both include. Since nothing they
include is a fitting home for the type, create one: machine-common.json.
Ugly & potentially slow: yet another submodule.
Nina chose to do 2.
I figure I'd leave it as is until we get to the point where we can get
rid of the *-target.json entirely.
- [PATCH-for-9.1 02/21] target/mips: Declare CPU QOM types using DEFINE_TYPES() macro, (continued)
- [PATCH-for-9.1 02/21] target/mips: Declare CPU QOM types using DEFINE_TYPES() macro, Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 04/21] target/sparc: Declare CPU QOM types using DEFINE_TYPES() macro, Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 03/21] target/ppc: Declare CPU QOM types using DEFINE_TYPES() macro, Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 06/21] target/i386: Make X86_CPU common to new I386_CPU / X86_64_CPU types, Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 09/21] qapi: Merge machine-common.json with qapi/machine.json, Philippe Mathieu-Daudé, 2024/03/15
- Re: [PATCH-for-9.1 09/21] qapi: Merge machine-common.json with qapi/machine.json,
Markus Armbruster <=
- [PATCH-for-9.1 05/21] cpus: Open code OBJECT_DECLARE_TYPE() in OBJECT_DECLARE_CPU_TYPE(), Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 07/21] target/mips: Make MIPS_CPU common to new MIPS32_CPU / MIPS64_CPU types, Philippe Mathieu-Daudé, 2024/03/15
- [RFC PATCH-for-9.1 15/21] target/arm: Use QMP generic_query_cpu_definitions(), Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 08/21] target/sparc: Make SPARC_CPU common to new SPARC32_CPU/SPARC64_CPU types, Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 10/21] qapi: Make CpuModel* definitions target agnostic, Philippe Mathieu-Daudé, 2024/03/15
- [PATCH-for-9.1 11/21] qapi: Make CpuDefinitionInfo target agnostic, Philippe Mathieu-Daudé, 2024/03/15