aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkihiko Odaki <akihiko.odaki@daynix.com>2023-12-02 17:00:25 +0900
committerPhilippe Mathieu-Daudé <philmd@linaro.org>2025-01-09 18:16:22 +0100
commitad1ea5ffa10d4cf365c142caf627f2c43b3592c2 (patch)
treed330e96cd256c1f434ef402ae04899685f67508d
parenta7a3784128fa1de275b5eb2406f3f46842fdbd1a (diff)
downloadqemu-ad1ea5ffa10d4cf365c142caf627f2c43b3592c2.zip
qemu-ad1ea5ffa10d4cf365c142caf627f2c43b3592c2.tar.gz
qemu-ad1ea5ffa10d4cf365c142caf627f2c43b3592c2.tar.bz2
qdev: Remove opts member
It is no longer used. Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Markus Armbruster <armbru@redhat.com> Message-ID: <20250104-reuse-v18-14-c349eafd8673@daynix.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
-rw-r--r--hw/core/qdev.c1
-rw-r--r--include/hw/qdev-core.h4
-rw-r--r--system/qdev-monitor.c12
3 files changed, 7 insertions, 10 deletions
diff --git a/hw/core/qdev.c b/hw/core/qdev.c
index 57c1d9d..09c4489 100644
--- a/hw/core/qdev.c
+++ b/hw/core/qdev.c
@@ -691,7 +691,6 @@ static void device_finalize(Object *obj)
dev->canonical_path = NULL;
}
- qobject_unref(dev->opts);
g_free(dev->id);
}
diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h
index e6ef80b..c4d3dc3 100644
--- a/include/hw/qdev-core.h
+++ b/include/hw/qdev-core.h
@@ -249,10 +249,6 @@ struct DeviceState {
*/
int64_t pending_deleted_expires_ms;
/**
- * @opts: QDict of options for the device
- */
- QDict *opts;
- /**
* @hotplugged: was device added after PHASE_MACHINE_READY?
*/
int hotplugged;
diff --git a/system/qdev-monitor.c b/system/qdev-monitor.c
index c844f53..6a38b56 100644
--- a/system/qdev-monitor.c
+++ b/system/qdev-monitor.c
@@ -631,6 +631,7 @@ DeviceState *qdev_device_add_from_qdict(const QDict *opts,
char *id;
DeviceState *dev = NULL;
BusState *bus = NULL;
+ QDict *properties;
driver = qdict_get_try_str(opts, "driver");
if (!driver) {
@@ -712,13 +713,14 @@ DeviceState *qdev_device_add_from_qdict(const QDict *opts,
}
/* set properties */
- dev->opts = qdict_clone_shallow(opts);
- qdict_del(dev->opts, "driver");
- qdict_del(dev->opts, "bus");
- qdict_del(dev->opts, "id");
+ properties = qdict_clone_shallow(opts);
+ qdict_del(properties, "driver");
+ qdict_del(properties, "bus");
+ qdict_del(properties, "id");
- object_set_properties_from_keyval(&dev->parent_obj, dev->opts, from_json,
+ object_set_properties_from_keyval(&dev->parent_obj, properties, from_json,
errp);
+ qobject_unref(properties);
if (*errp) {
goto err_del_dev;
}