[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 20/28] accel: Rename 'init' method to 'init_machine'
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PULL 20/28] accel: Rename 'init' method to 'init_machine' |
Date: |
Thu, 9 Oct 2014 12:17:27 +0200 |
From: Eduardo Habkost <address@hidden>
Today, all accelerator init functions affect some global state:
* tcg_init() calls tcg_exec_init() and affects globals such as tcg_tcx,
page size globals, and possibly others;
* kvm_init() changes the kvm_state global, cpu_interrupt_handler, and possibly
others;
* xen_init() changes the xen_xc global, and registers a change state handler.
With the new accelerator QOM classes, initialization may now be split in two
steps:
* instance_init() will do basic initialization that doesn't affect any global
state and don't need MachineState or MachineClass data. This will allow
probing code to safely create multiple accelerator objects on the fly just
for reporting host/accelerator capabilities, for example.
* accel_init_machine()/init_machine() will save the accelerator object in
MachineState, and do initialization steps which still affect global state,
machine state, or that need data from MachineClass or MachineState.
To clarify the difference between those two steps, rename init() to
init_machine().
Signed-off-by: Eduardo Habkost <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
---
accel.c | 8 ++++----
include/sysemu/accel.h | 2 +-
kvm-all.c | 2 +-
qtest.c | 2 +-
xen-common.c | 2 +-
5 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/accel.c b/accel.c
index 9241967..b151d55 100644
--- a/accel.c
+++ b/accel.c
@@ -57,11 +57,11 @@ static AccelClass *accel_find(const char *opt_name)
return ac;
}
-static int accel_init(AccelClass *acc, MachineClass *mc)
+static int accel_init_machine(AccelClass *acc, MachineClass *mc)
{
int ret;
*(acc->allowed) = true;
- ret = acc->init(mc);
+ ret = acc->init_machine(mc);
if (ret < 0) {
*(acc->allowed) = false;
}
@@ -98,7 +98,7 @@ int configure_accelerator(MachineClass *mc)
acc->name);
continue;
}
- ret = accel_init(acc, mc);
+ ret = accel_init_machine(acc, mc);
if (ret < 0) {
init_failed = true;
fprintf(stderr, "failed to initialize %s: %s\n",
@@ -128,7 +128,7 @@ static void tcg_accel_class_init(ObjectClass *oc, void
*data)
{
AccelClass *ac = ACCEL_CLASS(oc);
ac->name = "tcg";
- ac->init = tcg_init;
+ ac->init_machine = tcg_init;
ac->allowed = &tcg_allowed;
}
diff --git a/include/sysemu/accel.h b/include/sysemu/accel.h
index 120ca0e..8812cda 100644
--- a/include/sysemu/accel.h
+++ b/include/sysemu/accel.h
@@ -39,7 +39,7 @@ typedef struct AccelClass {
const char *opt_name;
const char *name;
int (*available)(void);
- int (*init)(MachineClass *mc);
+ int (*init_machine)(MachineClass *mc);
bool *allowed;
} AccelClass;
diff --git a/kvm-all.c b/kvm-all.c
index 18dcd45..ce0e4c7 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -2233,7 +2233,7 @@ static void kvm_accel_class_init(ObjectClass *oc, void
*data)
{
AccelClass *ac = ACCEL_CLASS(oc);
ac->name = "KVM";
- ac->init = kvm_init;
+ ac->init_machine = kvm_init;
ac->allowed = &kvm_allowed;
}
diff --git a/qtest.c b/qtest.c
index 0af8b74..18e26fc 100644
--- a/qtest.c
+++ b/qtest.c
@@ -564,7 +564,7 @@ static void qtest_accel_class_init(ObjectClass *oc, void
*data)
AccelClass *ac = ACCEL_CLASS(oc);
ac->name = "QTest";
ac->available = qtest_available;
- ac->init = qtest_init_accel;
+ ac->init_machine = qtest_init_accel;
ac->allowed = &qtest_allowed;
}
diff --git a/xen-common.c b/xen-common.c
index acc64d5..acb738f 100644
--- a/xen-common.c
+++ b/xen-common.c
@@ -126,7 +126,7 @@ static void xen_accel_class_init(ObjectClass *oc, void
*data)
{
AccelClass *ac = ACCEL_CLASS(oc);
ac->name = "Xen";
- ac->init = xen_init;
+ ac->init_machine = xen_init;
ac->allowed = &xen_allowed;
}
--
1.8.3.1
- [Qemu-devel] [PULL 00/28] Changes for 2014-10-09, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 01/28] qemu-char: Make the filename size for a chardev a #define, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 02/28] qemu-char: Rework qemu_chr_open_socket() for reconnect, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 03/28] qemu-char: Move some items into TCPCharDriver, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 04/28] qemu-char: set socket filename to disconnected when not connected, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 05/28] qemu-char: Add reconnecting to client sockets, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 06/28] qemu-char: Print the remote and local addresses for a socket, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 17/28] accel: Move qtest accel registration to qtest.c, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 18/28] accel: Remove tcg_available() function, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 19/28] accel: Move accel init/allowed code to separate function, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 20/28] accel: Rename 'init' method to 'init_machine',
Paolo Bonzini <=
- [Qemu-devel] [PULL 22/28] accel: Create accel object when initializing machine, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 21/28] accel: Pass MachineState object to accel init functions, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 26/28] qemu-error: Add error_vreport(), Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 27/28] qemu-sockets: Add error to non-blocking connect handler, Paolo Bonzini, 2014/10/09
- [Qemu-devel] [PULL 23/28] kvm: Make KVMState be the TYPE_KVM_ACCEL instance struct, Paolo Bonzini, 2014/10/09
- Re: [Qemu-devel] [PULL 23/28] kvm: Make KVMState be the TYPE_KVM_ACCEL instance struct, Gonglei, 2014/10/10