Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- hw/i386/pc.c | 1 + hw/i386/pc_piix.c | 12 +++++++----- include/hw/i386/pc.h | 1 + 3 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 10e8d10..4d2e4bf 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -1616,6 +1616,7 @@ static void pc_machine_class_init(ObjectClass *oc, void *data) HotplugHandlerClass *hc = HOTPLUG_HANDLER_CLASS(oc); pcmc->get_hotplug_handler = mc->get_hotplug_handler; + pcmc->kvmclock_enabled = true; mc->get_hotplug_handler = pc_get_hotpug_handler; mc->default_boot_order = "cad"; mc->hot_add_cpu = pc_hot_add_cpu; diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index 25ad776..a1f285d 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -70,12 +70,12 @@ static bool gigabyte_align = true; static bool has_reserved_memory = true; /* PC hardware initialisation */ -static void pc_init1(MachineState *machine, - int kvmclock_enabled) +static void pc_init1(MachineState *machine) { PCMachineState *pc_machine = PC_MACHINE(machine); PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pc_machine); bool pci_enabled = pcmc->pci_enabled; + bool kvmclock_enabled = pcmc->kvmclock_enabled; MemoryRegion *system_memory = get_system_memory(); MemoryRegion *system_io = get_system_io(); int i; @@ -274,7 +274,7 @@ static void pc_init1(MachineState *machine, static void pc_init_pci(MachineState *machine) { - pc_init1(machine, 1); + pc_init1(machine); } static void pc_compat_2_0(MachineState *machine) @@ -376,7 +376,7 @@ static void pc_init_pci_no_kvmclock(MachineState *machine) smbios_defaults = false; x86_cpu_compat_disable_kvm_features(FEAT_KVM, KVM_FEATURE_PV_EOI); enable_compat_apic_id_mode(); - pc_init1(machine, 0); + pc_init1(machine); } static void pc_init_isa(MachineState *machine) @@ -389,7 +389,7 @@ static void pc_init_isa(MachineState *machine) } x86_cpu_compat_disable_kvm_features(FEAT_KVM, KVM_FEATURE_PV_EOI); enable_compat_apic_id_mode(); - pc_init1(machine, 1); + pc_init1(machine); } #ifdef CONFIG_XEN @@ -797,6 +797,7 @@ static TypeInfo pc_machine_v0_14_type_info = { static void pc_machine_v0_13_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); + PCMachineClass *pcmc = PC_MACHINE_CLASS(oc); static GlobalProperty compat_props[] = { PC_COMPAT_0_13, { /* end of list */ } @@ -806,6 +807,7 @@ static void pc_machine_v0_13_class_init(ObjectClass *oc, void *data) mc->hw_version = "0.13"; mc->name = "pc-0.13"; machine_class_add_compat_props(mc, compat_props); + pcmc->kvmclock_enabled = false; } static TypeInfo pc_machine_v0_13_type_info = { diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 344c959..4715b72 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -50,6 +50,7 @@ struct PCMachineClass { HotplugHandler *(*get_hotplug_handler)(MachineState *machine, DeviceState *dev); bool pci_enabled; + bool kvmclock_enabled; }; typedef struct PCMachineState PCMachineState; -- 1.9.0