From adbfa6a6474d42f0056c907da1c27955b0f9bf18 Mon Sep 17 00:00:00 2001 From: liucm Date: Fri, 1 Aug 2014 17:15:49 -0700 Subject: [PATCH] acpi: skip smm code running in UG mode Change-Id: I74c8f375800706c9c0db9e87d92376873ae9c839 Signed-off-by: liucm --- hw/acpi/ich9.c | 4 ++-- hw/acpi/piix4.c | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/acpi/ich9.c b/hw/acpi/ich9.c index 0afac425ec..6d5f226513 100644 --- a/hw/acpi/ich9.c +++ b/hw/acpi/ich9.c @@ -158,7 +158,7 @@ const VMStateDescription vmstate_ich9_pm = { VMSTATE_END_OF_LIST() } }; - +extern int hax_enabled(void); static void pm_reset(void *opaque) { ICH9LPCPMRegs *pm = opaque; @@ -169,7 +169,7 @@ static void pm_reset(void *opaque) acpi_pm_tmr_reset(&pm->acpi_regs); acpi_gpe_reset(&pm->acpi_regs); - if (kvm_enabled()) { + if (kvm_enabled()||hax_enabled()) { /* Mark SMM as already inited to prevent SMM from running. KVM does not * support SMM mode. */ pm->smi_en |= ICH9_PMIO_SMI_EN_APMC_EN; diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c index 4188e09667..cc92e26c92 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -283,7 +283,7 @@ static const VMStateDescription vmstate_acpi = { VMSTATE_END_OF_LIST() } }; - +extern int hax_enabled(void); static void piix4_reset(void *opaque) { PIIX4PMState *s = opaque; @@ -298,7 +298,7 @@ static void piix4_reset(void *opaque) pci_conf[0x40] = 0x01; /* PM io base read only bit */ pci_conf[0x80] = 0; - if (s->kvm_enabled) { + if (s->kvm_enabled ||hax_enabled()) { /* Mark SMM as already inited (until KVM supports SMM). */ pci_conf[0x5B] = 0x02; } @@ -393,7 +393,7 @@ static int piix4_pm_initfn(PCIDevice *dev) /* APM */ apm_init(dev, &s->apm, apm_ctrl_changed, s); - if (s->kvm_enabled) { + if (s->kvm_enabled || hax_enabled()) { /* Mark SMM as already inited to prevent SMM from running. KVM does not * support SMM mode. */ pci_conf[0x5B] = 0x02; -- 2.34.1