qapi: change 'unsigned special_features' to 'uint64_t features'

The "special_features" field / parameter holds the subset of schema
features that are for internal code use. Specifically 'DEPRECATED'
and 'UNSTABLE'.

This special casing of internal features is going to be removed, so
prepare for that by renaming to 'features'. Using a fixed size type
is also best practice for bit fields.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <20250205123550.2754387-3-berrange@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2025-02-05 12:35:48 +00:00 committed by Markus Armbruster
parent d8a22e69fe
commit 696ae1ac91
13 changed files with 34 additions and 34 deletions

View file

@ -18,7 +18,7 @@
extern CompatPolicy compat_policy;
bool compat_policy_input_ok(unsigned special_features,
bool compat_policy_input_ok(uint64_t features,
const CompatPolicy *policy,
ErrorClass error_class,
const char *kind, const char *name,

View file

@ -33,7 +33,7 @@ typedef struct QmpCommand
/* Runs in coroutine context if QCO_COROUTINE is set */
QmpCommandFunc *fn;
QmpCommandOptions options;
unsigned special_features;
uint64_t features;
QTAILQ_ENTRY(QmpCommand) node;
bool enabled;
const char *disable_reason;
@ -43,7 +43,7 @@ typedef QTAILQ_HEAD(QmpCommandList, QmpCommand) QmpCommandList;
void qmp_register_command(QmpCommandList *cmds, const char *name,
QmpCommandFunc *fn, QmpCommandOptions options,
unsigned special_features);
uint64_t features);
const QmpCommand *qmp_find_command(const QmpCommandList *cmds,
const char *name);
void qmp_disable_command(QmpCommandList *cmds, const char *name,

View file

@ -18,7 +18,7 @@ typedef enum {
typedef struct QEnumLookup {
const char *const *array;
const unsigned char *const special_features;
const uint64_t *const features;
const int size;
} QEnumLookup;

View file

@ -115,11 +115,11 @@ struct Visitor
/* Optional */
bool (*policy_reject)(Visitor *v, const char *name,
unsigned special_features, Error **errp);
uint64_t features, Error **errp);
/* Optional */
bool (*policy_skip)(Visitor *v, const char *name,
unsigned special_features);
uint64_t features);
/* Must be set */
VisitorType type;

View file

@ -463,29 +463,29 @@ bool visit_optional(Visitor *v, const char *name, bool *present);
/*
* Should we reject member @name due to policy?
*
* @special_features is the member's special features encoded as a
* bitset of QapiSpecialFeature.
* @features is the member's special features encoded as a
* bitset of QapiFeature.
*
* @name must not be NULL. This function is only useful between
* visit_start_struct() and visit_end_struct(), since only objects
* have deprecated members.
*/
bool visit_policy_reject(Visitor *v, const char *name,
unsigned special_features, Error **errp);
uint64_t features, Error **errp);
/*
*
* Should we skip member @name due to policy?
*
* @special_features is the member's special features encoded as a
* bitset of QapiSpecialFeature.
* @features is the member's special features encoded as a
* bitset of QapiFeature.
*
* @name must not be NULL. This function is only useful between
* visit_start_struct() and visit_end_struct(), since only objects
* have deprecated members.
*/
bool visit_policy_skip(Visitor *v, const char *name,
unsigned special_features);
uint64_t features);
/*
* Set policy for handling deprecated management interfaces.