aboutsummaryrefslogtreecommitdiff
path: root/include/hw/qdev-properties.h
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2024-10-18 11:18:25 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2024-11-05 14:18:14 +0100
commitd36f165d9523a5d151f11888938fcc66a6dd10df (patch)
tree531195304568083712eb91cbf59452e615458351 /include/hw/qdev-properties.h
parent11b8920ed2093848f79f93d106afe8a69a61a523 (diff)
downloadqemu-d36f165d9523a5d151f11888938fcc66a6dd10df.zip
qemu-d36f165d9523a5d151f11888938fcc66a6dd10df.tar.gz
qemu-d36f165d9523a5d151f11888938fcc66a6dd10df.tar.bz2
qdev: make properties array "const"
Constify all accesses to qdev properties, except for the ObjectPropertyAccessor itself. This makes it possible to place them in read-only memory, and also lets Rust bindings switch from "static mut" arrays to "static"; which is advantageous, because mutable statics are highly discouraged. Reviewed-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include/hw/qdev-properties.h')
-rw-r--r--include/hw/qdev-properties.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/hw/qdev-properties.h b/include/hw/qdev-properties.h
index 09aa04c..26ebd23 100644
--- a/include/hw/qdev-properties.h
+++ b/include/hw/qdev-properties.h
@@ -37,7 +37,7 @@ struct PropertyInfo {
int (*print)(Object *obj, Property *prop, char *dest, size_t len);
void (*set_default_value)(ObjectProperty *op, const Property *prop);
ObjectProperty *(*create)(ObjectClass *oc, const char *name,
- Property *prop);
+ const Property *prop);
ObjectPropertyAccessor *get;
ObjectPropertyAccessor *set;
ObjectPropertyRelease *release;
@@ -223,7 +223,7 @@ void error_set_from_qdev_prop_error(Error **errp, int ret, Object *obj,
* On error, store error in @errp. Static properties access data in a struct.
* The type of the QOM property is derived from prop->info.
*/
-void qdev_property_add_static(DeviceState *dev, Property *prop);
+void qdev_property_add_static(DeviceState *dev, const Property *prop);
/**
* qdev_alias_all_properties: Create aliases on source for all target properties