[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 04/21] machine: MACHINE_TYPE_NAME macro
From: |
Andreas Färber |
Subject: |
[Qemu-devel] [PULL 04/21] machine: MACHINE_TYPE_NAME macro |
Date: |
Sat, 19 Sep 2015 16:43:13 +0200 |
From: Eduardo Habkost <address@hidden>
The macro will be useful to ensure the machine class names follow the
right format to make machine class lookup by class name work correctly.
Signed-off-by: Eduardo Habkost <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Reviewed-by: David Gibson <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>
---
include/hw/boards.h | 6 ++++++
vl.c | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/include/hw/boards.h b/include/hw/boards.h
index 566a5ca..586f939 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -40,6 +40,12 @@ void memory_region_allocate_system_memory(MemoryRegion *mr,
Object *owner,
int qemu_register_machine(QEMUMachine *m);
#define TYPE_MACHINE_SUFFIX "-machine"
+
+/* Machine class name that needs to be used for class-name-based machine
+ * type lookup to work.
+ */
+#define MACHINE_TYPE_NAME(machinename) (machinename TYPE_MACHINE_SUFFIX)
+
#define TYPE_MACHINE "machine"
#undef MACHINE /* BSD defines it and QEMU does not use it */
#define MACHINE(obj) \
diff --git a/vl.c b/vl.c
index 3c6480d..3c6c9b0 100644
--- a/vl.c
+++ b/vl.c
@@ -1452,7 +1452,7 @@ static void qemu_machine_class_init(ObjectClass *oc, void
*data)
int qemu_register_machine(QEMUMachine *m)
{
- char *name = g_strconcat(m->name, TYPE_MACHINE_SUFFIX, NULL);
+ char *name = g_strdup_printf(MACHINE_TYPE_NAME("%s"), m->name);
TypeInfo ti = {
.name = name,
.parent = TYPE_MACHINE,
--
2.1.4
- [Qemu-devel] [PULL 00/21] QOM devices patch queue 2015-09-19, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 04/21] machine: MACHINE_TYPE_NAME macro,
Andreas Färber <=
- [Qemu-devel] [PULL 03/21] qdev: Do not use slow [*] expansion for GPIO creation, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 02/21] qom: Fix invalid error check in property_get_str(), Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 01/21] qom: Do not reuse errp after a possible error, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 05/21] vexpress: Don't set name on abstract class, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 06/21] vexpress: Rename machine classes to use MACHINE_TYPE_NAME, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 07/21] arm: Rename virt machine class to use MACHINE_TYPE_NAME, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 09/21] s390-virtio: Rename machine class name to use MACHINE_TYPE_NAME, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 12/21] machine: Ensure all TYPE_MACHINE subclasses have the right suffix, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 10/21] s390: Rename s390-ccw-virtio-2.4 class name to use MACHINE_TYPE_NAME, Andreas Färber, 2015/09/19
- [Qemu-devel] [PULL 08/21] pseries: Rename machine class names to use MACHINE_TYPE_NAME, Andreas Färber, 2015/09/19