On Wed, Apr 24, 2019 at 12:23:33AM +0200, Philippe Mathieu-Daudé wrote: > Hi Eduardo, > > On 4/23/19 11:22 PM, Eduardo Habkost wrote: > > This struct will be used to represent support and deprecation > > status of QEMU features. > > Excellent idea! > > > > > Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> > > --- > > qapi/common.json | 24 ++++++++++++++++++++++++ > > 1 file changed, 24 insertions(+) > > > > diff --git a/qapi/common.json b/qapi/common.json > > index 99d313ef3b..b59d0dc66b 100644 > > --- a/qapi/common.json > > +++ b/qapi/common.json > > @@ -193,3 +193,27 @@ > > 'ppc64', 'riscv32', 'riscv64', 's390x', 'sh4', > > 'sh4eb', 'sparc', 'sparc64', 'tricore', 'unicore32', > > 'x86_64', 'xtensa', 'xtensaeb' ] } > > + > > +## > > +# @SupportStatusInfo: > > +# > > +# Information on support status of a given feature > > +# (e.g. machine type) > > Hopefully it is generic, we can use it for devices too.
Yes, I want to keep it generic. > > > +# > > +# @deprecated: if true, the given feature is deprecated and may be removed > > +# in future versions of QEMU according to the QEMU deprecation > > +# policy. > > +# > > +# @status-message: Human readable message describing support status > > +# of the feature. > > +# > > +# @suggested-alternative: Optional. Suggested alternative for a deprecated > > +# feature. For machine types, this should be the > > name > > +# of an available machine-type. > > +# > > +# Since: 4.1 > > +## > > +{ 'struct': 'SupportStatusInfo', > > + 'data': { 'deprecated': 'bool', > > + '*status-message': 'str', > > This one shouldn't be optional IMHO, we should enforce developpers to > give a reason for their deprecation. > > With this argument not optional: > > Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com> I might agree with you if you show me what would be a good "reason for deprecation" string for pc-0.15 and spapr. :) The only information contained in these machines today is "use another machine instead", and this is already encoded in the suggested-alternative field. -- Eduardo