[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC 16/25] accel: Save AccelState on MachineState when ini
From: |
Eduardo Habkost |
Subject: |
[Qemu-devel] [RFC 16/25] accel: Save AccelState on MachineState when initializing |
Date: |
Wed, 9 Jul 2014 19:04:13 -0300 |
Signed-off-by: Eduardo Habkost <address@hidden>
---
hw/core/accel.c | 3 +++
include/hw/boards.h | 1 +
include/qemu/typedefs.h | 2 ++
3 files changed, 6 insertions(+)
diff --git a/hw/core/accel.c b/hw/core/accel.c
index b86773d..268ecee 100644
--- a/hw/core/accel.c
+++ b/hw/core/accel.c
@@ -32,6 +32,7 @@
#include "sysemu/qtest.h"
#include "hw/xen/xen.h"
#include "qom/object.h"
+#include "hw/boards.h"
int tcg_tb_size;
static bool tcg_allowed = true;
@@ -64,9 +65,11 @@ static int accel_init_machine(AccelClass *acc, MachineState
*ms)
const char *cname = object_class_get_name(oc);
AccelState *accel = ACCEL(object_new(cname));
int ret;
+ ms->accelerator = accel;
*(acc->allowed) = true;
ret = acc->init_machine(ms);
if (ret < 0) {
+ ms->accelerator = NULL;
*(acc->allowed) = false;
object_unref(OBJECT(accel));
}
diff --git a/include/hw/boards.h b/include/hw/boards.h
index 605a970..1cff2b4 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -132,6 +132,7 @@ struct MachineState {
char *kernel_cmdline;
char *initrd_filename;
const char *cpu_model;
+ AccelState *accelerator;
};
#endif
diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
index 04df51b..446af93 100644
--- a/include/qemu/typedefs.h
+++ b/include/qemu/typedefs.h
@@ -30,6 +30,8 @@ typedef struct MemoryListener MemoryListener;
typedef struct MemoryMappingList MemoryMappingList;
+typedef struct AccelState AccelState;
+
typedef struct QEMUMachine QEMUMachine;
typedef struct MachineClass MachineClass;
typedef struct MachineState MachineState;
--
1.9.3
- [Qemu-devel] [RFC 04/25] accel: Simplify configure_accelerator() using AccelType *acc variable, (continued)
- [Qemu-devel] [RFC 04/25] accel: Simplify configure_accelerator() using AccelType *acc variable, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 06/25] accel: Use QOM classes for accel types, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 07/25] accel: Make AccelClass.available() optional, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 08/25] accel: Move KVM accel registration to kvm-all.c, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 09/25] accel: Move Xen registration code to xen-common.c, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 10/25] accel: Move qtest accel registration to qtest.c, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 11/25] accel: Remove tcg_available() function, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 13/25] accel: Rename 'init' method to 'init_machine', Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 14/25] accel: Pass MachineState object to accel init functions, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 12/25] accel: Move accel init/allowed code to separate function, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 16/25] accel: Save AccelState on MachineState when initializing,
Eduardo Habkost <=
- [Qemu-devel] [RFC 15/25] accel: Create accel object when initializing machine, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 17/25] kvm: Make KVMState be the TYPE_KVM_ACCEL instance struct, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 20/25] accel: TYPE_X86_ACCEL interface, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 24/25] target-i386: Accept "host" as value for CPU vendor, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 23/25] target-i386: Move accelerator-specific code outside X86CPU.instance_init, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 18/25] accel: Get target name as argument when initializing accelerator, Eduardo Habkost, 2014/07/09
- [Qemu-devel] [RFC 25/25] target-i386: Move KVM CPUID hacking to accelerator cpu_post_init hook, Eduardo Habkost, 2014/07/10
- [Qemu-devel] [RFC 21/25] kvm: x86 KVM accelerator subclass, Eduardo Habkost, 2014/07/10
- [Qemu-devel] [RFC 19/25] accel: Use target-specific accel class if available, Eduardo Habkost, 2014/07/10
- [Qemu-devel] [RFC 22/25] target-i386: Add AccelState parameter to cpu_x86_create(), Eduardo Habkost, 2014/07/10