diff --git a/accel.c b/accel.c index b151d558a5..6087ab32b7 100644 --- a/accel.c +++ b/accel.c @@ -24,6 +24,7 @@ */ #include "sysemu/accel.h" +#include "hw/boards.h" #include "qemu-common.h" #include "sysemu/arch_init.h" #include "sysemu/sysemu.h" @@ -35,7 +36,7 @@ int tcg_tb_size; static bool tcg_allowed = true; -static int tcg_init(MachineClass *mc) +static int tcg_init(MachineState *ms) { tcg_exec_init(tcg_tb_size * 1024 * 1024); return 0; @@ -57,18 +58,18 @@ static AccelClass *accel_find(const char *opt_name) return ac; } -static int accel_init_machine(AccelClass *acc, MachineClass *mc) +static int accel_init_machine(AccelClass *acc, MachineState *ms) { int ret; *(acc->allowed) = true; - ret = acc->init_machine(mc); + ret = acc->init_machine(ms); if (ret < 0) { *(acc->allowed) = false; } return ret; } -int configure_accelerator(MachineClass *mc) +int configure_accelerator(MachineState *ms) { const char *p; char buf[10]; @@ -98,7 +99,7 @@ int configure_accelerator(MachineClass *mc) acc->name); continue; } - ret = accel_init_machine(acc, mc); + ret = accel_init_machine(acc, ms); if (ret < 0) { init_failed = true; fprintf(stderr, "failed to initialize %s: %s\n", diff --git a/include/hw/boards.h b/include/hw/boards.h index dfb6718dc1..0058c49d8d 100644 --- a/include/hw/boards.h +++ b/include/hw/boards.h @@ -9,8 +9,6 @@ #include "qom/object.h" -typedef struct MachineState MachineState; - typedef void QEMUMachineInitFunc(MachineState *ms); typedef void QEMUMachineResetFunc(void); diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h index 5f20b0e263..04df51b6fc 100644 --- a/include/qemu/typedefs.h +++ b/include/qemu/typedefs.h @@ -32,6 +32,7 @@ typedef struct MemoryMappingList MemoryMappingList; typedef struct QEMUMachine QEMUMachine; typedef struct MachineClass MachineClass; +typedef struct MachineState MachineState; typedef struct NICInfo NICInfo; typedef struct HCIInfo HCIInfo; typedef struct AudioState AudioState; diff --git a/include/sysemu/accel.h b/include/sysemu/accel.h index 8812cdae21..997720f36c 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_machine)(MachineClass *mc); + int (*init_machine)(MachineState *ms); bool *allowed; } AccelClass; @@ -57,6 +57,6 @@ typedef struct AccelClass { extern int tcg_tb_size; -int configure_accelerator(MachineClass *mc); +int configure_accelerator(MachineState *ms); #endif diff --git a/kvm-all.c b/kvm-all.c index ce0e4c7e40..0a9de929e0 100644 --- a/kvm-all.c +++ b/kvm-all.c @@ -1380,8 +1380,9 @@ static int kvm_max_vcpus(KVMState *s) return (ret) ? ret : kvm_recommended_vcpus(s); } -static int kvm_init(MachineClass *mc) +static int kvm_init(MachineState *ms) { + MachineClass *mc = MACHINE_GET_CLASS(ms); static const char upgrade_note[] = "Please upgrade to at least kernel 2.6.29 or recent kvm-kmod\n" "(see http://sourceforge.net/projects/kvm).\n"; diff --git a/qtest.c b/qtest.c index 18e26fc41f..4b85995de0 100644 --- a/qtest.c +++ b/qtest.c @@ -520,7 +520,7 @@ static void configure_qtest_icount(const char *options) qemu_opts_del(opts); } -static int qtest_init_accel(MachineClass *mc) +static int qtest_init_accel(MachineState *ms) { configure_qtest_icount("0"); return 0; diff --git a/vl.c b/vl.c index c3def21666..020b7c3d76 100644 --- a/vl.c +++ b/vl.c @@ -4179,7 +4179,7 @@ int main(int argc, char **argv, char **envp) exit(1); } - configure_accelerator(machine_class); + configure_accelerator(current_machine); if (qtest_chrdev) { Error *local_err = NULL; diff --git a/xen-common.c b/xen-common.c index acb738f2ff..56359ca725 100644 --- a/xen-common.c +++ b/xen-common.c @@ -110,7 +110,7 @@ static void xen_change_state_handler(void *opaque, int running, } } -static int xen_init(MachineClass *mc) +static int xen_init(MachineState *ms) { xen_xc = xen_xc_interface_open(0, 0, 0); if (xen_xc == XC_HANDLER_INITIAL_VALUE) {