On 11.09.23 22:52, Collin Walling wrote: Patch subject is wrong (should contain "static-recommended")
Newer S390 machines may drop support for features completely, rendering guests operating with older CPU models incapable of running on said machines. A manual effort to disable certain CPU features would be required. To alleviate this issue, a list of "deprecated" features are now retained within QEMU, and a new "static-recommended" CPU model expansion type has been created to allow a query of the host-model with deprecated features explicitly disabled. Signed-off-by: Collin Walling <wall...@linux.ibm.com> --- qapi/machine-target.json | 8 +++++++- target/s390x/cpu_features.c | 14 ++++++++++++++ target/s390x/cpu_features.h | 1 + target/s390x/cpu_models_sysemu.c | 26 +++++++++++++++++++++----- 4 files changed, 43 insertions(+), 6 deletions(-) diff --git a/qapi/machine-target.json b/qapi/machine-target.json index f0a6b72414..4dc891809d 100644 --- a/qapi/machine-target.json +++ b/qapi/machine-target.json @@ -42,6 +42,12 @@ # to be migration-safe, but allows tooling to get an insight and # work with model details. # +# @static-recommended: Expand to a static CPU model with property +# changes suggested by the architecture. This is useful for +# expanding a CPU model expected to operate in mixed +# CPU-generation environments. The @static-recommended CPU +# models are migration-safe. +#
Can we instead make this a new parameter for query-cpu-model-expansion ("no-deprecated-features" ? ), that properly gets rejected from other archs when not supported?
[...]
/* convert S390CPUDef into a static CpuModelInfo */ static void cpu_info_from_model(CpuModelInfo *info, const S390CPUModel *model, - bool delta_changes) + bool delta_changes, bool disable_dep_feats)
"dep" can be misleading ("depended") "no_deprecated_feat" ? -- Cheers, David / dhildenb