[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC 08/15] move global properties code to global-propertie
From: |
Eduardo Habkost |
Subject: |
[Qemu-devel] [RFC 08/15] move global properties code to global-properties.c |
Date: |
Tue, 7 Aug 2012 16:56:46 -0300 |
Signed-off-by: Eduardo Habkost <address@hidden>
---
Makefile.objs | 1 +
global-properties.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++
hw/qdev-properties.c | 54 --------------------------------------------------
3 files changed, 57 insertions(+), 54 deletions(-)
create mode 100644 global-properties.c
diff --git a/Makefile.objs b/Makefile.objs
index 5ebbcfa..5cd4082 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -77,6 +77,7 @@ common-obj-y += qemu-char.o #aio.o
common-obj-y += block-migration.o iohandler.o
common-obj-y += pflib.o
common-obj-y += bitmap.o bitops.o
+common-obj-y += global-properties.o
common-obj-$(CONFIG_POSIX) += migration-exec.o migration-unix.o migration-fd.o
common-obj-$(CONFIG_WIN32) += version.o
diff --git a/global-properties.c b/global-properties.c
new file mode 100644
index 0000000..a1c3581
--- /dev/null
+++ b/global-properties.c
@@ -0,0 +1,56 @@
+#include "hw/qdev.h"
+#include "qerror.h"
+
+static QTAILQ_HEAD(, GlobalProperty) global_props =
QTAILQ_HEAD_INITIALIZER(global_props);
+
+static void qdev_prop_register_global(GlobalProperty *prop)
+{
+ QTAILQ_INSERT_TAIL(&global_props, prop, next);
+}
+
+void qdev_prop_register_global_list(GlobalProperty *props)
+{
+ int i;
+
+ for (i = 0; props[i].driver != NULL; i++) {
+ qdev_prop_register_global(props+i);
+ }
+}
+
+void qdev_prop_set_globals(DeviceState *dev)
+{
+ ObjectClass *class = object_get_class(OBJECT(dev));
+
+ do {
+ GlobalProperty *prop;
+ Error *err = NULL;
+ QTAILQ_FOREACH(prop, &global_props, next) {
+ if (strcmp(object_class_get_name(class), prop->driver) != 0) {
+ continue;
+ }
+ qdev_prop_parse(dev, prop->property, prop->value, &err);
+ if (err) {
+ qerror_report_err(err);
+ exit(1);
+ }
+ }
+ class = object_class_get_parent(class);
+ } while (class);
+}
+
+static int qdev_add_one_global(QemuOpts *opts, void *opaque)
+{
+ GlobalProperty *g;
+
+ g = g_malloc0(sizeof(*g));
+ g->driver = qemu_opt_get(opts, "driver");
+ g->property = qemu_opt_get(opts, "property");
+ g->value = qemu_opt_get(opts, "value");
+ qdev_prop_register_global(g);
+ return 0;
+}
+
+void qemu_add_globals(void)
+{
+ qemu_opts_foreach(qemu_find_opts("global"), qdev_add_one_global, NULL, 0);
+}
diff --git a/hw/qdev-properties.c b/hw/qdev-properties.c
index a52884f..3217490 100644
--- a/hw/qdev-properties.c
+++ b/hw/qdev-properties.c
@@ -1219,57 +1219,3 @@ void qdev_prop_set_ptr(DeviceState *dev, const char
*name, void *value)
ptr = qdev_get_prop_ptr(dev, prop);
*ptr = value;
}
-
-static QTAILQ_HEAD(, GlobalProperty) global_props =
QTAILQ_HEAD_INITIALIZER(global_props);
-
-static void qdev_prop_register_global(GlobalProperty *prop)
-{
- QTAILQ_INSERT_TAIL(&global_props, prop, next);
-}
-
-void qdev_prop_register_global_list(GlobalProperty *props)
-{
- int i;
-
- for (i = 0; props[i].driver != NULL; i++) {
- qdev_prop_register_global(props+i);
- }
-}
-
-void qdev_prop_set_globals(DeviceState *dev)
-{
- ObjectClass *class = object_get_class(OBJECT(dev));
-
- do {
- GlobalProperty *prop;
- Error *err = NULL;
- QTAILQ_FOREACH(prop, &global_props, next) {
- if (strcmp(object_class_get_name(class), prop->driver) != 0) {
- continue;
- }
- qdev_prop_parse(dev, prop->property, prop->value, &err);
- if (err) {
- qerror_report_err(err);
- exit(1);
- }
- }
- class = object_class_get_parent(class);
- } while (class);
-}
-
-static int qdev_add_one_global(QemuOpts *opts, void *opaque)
-{
- GlobalProperty *g;
-
- g = g_malloc0(sizeof(*g));
- g->driver = qemu_opt_get(opts, "driver");
- g->property = qemu_opt_get(opts, "property");
- g->value = qemu_opt_get(opts, "value");
- qdev_prop_register_global(g);
- return 0;
-}
-
-void qemu_add_globals(void)
-{
- qemu_opts_foreach(qemu_find_opts("global"), qdev_add_one_global, NULL, 0);
-}
--
1.7.11.2
- [Qemu-devel] [RFC 00/15] attempt to fix CPU topology info on CPU APIC IDs, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 05/15] remove FW_CFG_MAX_CPUS from fw_cfg_init(), Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 03/15] kvm: set vcpu_id to APIC ID instead of CPU index, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 09/15] isolate qdev-independent parts of qdev_prop_set_globals(), Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 10/15] create object_prop_set_globals(), Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 11/15] rename qdev_prop_register_global_list to qemu_globals_register_list, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 12/15] create qemu_global_get() function, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 08/15] move global properties code to global-properties.c,
Eduardo Habkost <=
- [Qemu-devel] [RFC 04/15] i386: create apic_id_for_cpu() function (v2), Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 06/15] pc: set FW_CFG data based on APIC ID calculation, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 01/15] cpus.h: include cpu-common.h, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 13/15] tests: support target-specific unit tests, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 07/15] qdev: allow qdev_prop_parse() to report errors, Eduardo Habkost, 2012/08/07
- [Qemu-devel] [RFC 02/15] hw/apic.c: rename bit functions to not conflict with bitops.h (v2), Eduardo Habkost, 2012/08/07