aboutsummaryrefslogtreecommitdiff
path: root/qapi
diff options
context:
space:
mode:
authorCollin Walling <walling@linux.ibm.com>2024-07-26 16:36:46 -0400
committerDavid Hildenbrand <david@redhat.com>2024-07-29 21:47:16 +0200
commit442110bc6f3f308aedf884103fdba87ba906dfe7 (patch)
tree35292c5c46ace4ebed417294addcc811bc325088 /qapi
parent8e466dd092469e5ab0f355775c571ea96f3a8e23 (diff)
target/s390x: move @deprecated-props to CpuModelExpansion Info
CpuModelInfo is used both as command argument and in command returns. Its @deprecated-props array does not make any sense in arguments, and is silently ignored. We actually want it only as return value of query-cpu-model-expansion. Move it from CpuModelInfo to CpuModelExpansionType, and document its dependence on expansion type property. This was identified late during review [1] and we have to fix it up while it's not part of an official QEMU release yet. [1] https://lore.kernel.org/qemu-devel/20240719181741.35146-1-walling@linux.ibm.com/ Message-ID: <20240726203646.20279-1-walling@linux.ibm.com> Fixes: eed0e8ffa38f ("target/s390x: filter deprecated properties based on model expansion type") Signed-off-by: Collin Walling <walling@linux.ibm.com> [ david: - add "Fixes", adjust description, reference v3 instead - make property s390x-only and non-optional - fixup "populate" vs. "populated" ] Signed-off-by: David Hildenbrand <david@redhat.com>
Diffstat (limited to 'qapi')
-rw-r--r--qapi/machine-target.json19
1 files changed, 11 insertions, 8 deletions
diff --git a/qapi/machine-target.json b/qapi/machine-target.json
index a552e2b0ce..00bbecc905 100644
--- a/qapi/machine-target.json
+++ b/qapi/machine-target.json
@@ -20,17 +20,11 @@
#
# @props: a dictionary of QOM properties to be applied
#
-# @deprecated-props: a list of properties that are flagged as deprecated
-# by the CPU vendor. These properties are either a subset of the
-# properties enabled on the CPU model, or a set of properties
-# deprecated across all models for the architecture.
-#
# Since: 2.8
##
{ 'struct': 'CpuModelInfo',
'data': { 'name': 'str',
- '*props': 'any',
- '*deprecated-props': ['str'] } }
+ '*props': 'any' } }
##
# @CpuModelExpansionType:
@@ -248,10 +242,19 @@
#
# @model: the expanded CpuModelInfo.
#
+# @deprecated-props: a list of properties that are flagged as deprecated
+# by the CPU vendor. The list depends on the CpuModelExpansionType:
+# "static" properties are a subset of the enabled-properties for
+# the expanded model; "full" properties are a set of properties
+# that are deprecated across all models for the architecture.
+# (since: 9.1).
+#
# Since: 2.8
##
{ 'struct': 'CpuModelExpansionInfo',
- 'data': { 'model': 'CpuModelInfo' },
+ 'data': { 'model': 'CpuModelInfo',
+ 'deprecated-props' : { 'type': ['str'],
+ 'if': 'TARGET_S390X' } },
'if': { 'any': [ 'TARGET_S390X',
'TARGET_I386',
'TARGET_ARM',