aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hw/i386/acpi-build.c2
-rw-r--r--hw/i386/pc.c2
-rw-r--r--hw/xen/xen_pvdev.c2
-rw-r--r--include/hw/i386/pc.h2
-rw-r--r--xen-common.c6
5 files changed, 12 insertions, 2 deletions
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index ce9cc93af4..c02f408ab2 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -2960,7 +2960,7 @@ void acpi_setup(void)
return;
}
- if (!pcmc->has_acpi_build) {
+ if (!pcms->acpi_build_enabled) {
ACPI_BUILD_DPRINTF("ACPI build disabled. Bailing out.\n");
return;
}
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index c011552ac4..2c37a78c7a 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -2189,6 +2189,8 @@ static void pc_machine_initfn(Object *obj)
pcms->vmport = ON_OFF_AUTO_AUTO;
/* nvdimm is disabled on default. */
pcms->acpi_nvdimm_state.is_enabled = false;
+ /* acpi build is enabled by default if machine supports it */
+ pcms->acpi_build_enabled = PC_MACHINE_GET_CLASS(pcms)->has_acpi_build;
}
static void pc_machine_reset(void)
diff --git a/hw/xen/xen_pvdev.c b/hw/xen/xen_pvdev.c
index 405e15484c..5212bc6d9e 100644
--- a/hw/xen/xen_pvdev.c
+++ b/hw/xen/xen_pvdev.c
@@ -18,7 +18,7 @@
*/
#include "qemu/osdep.h"
-
+#include "qemu/log.h"
#include "hw/xen/xen_backend.h"
#include "hw/xen/xen_pvdev.h"
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 98dc7722c3..8eb517f914 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -62,6 +62,8 @@ struct PCMachineState {
AcpiNVDIMMState acpi_nvdimm_state;
+ bool acpi_build_enabled;
+
/* RAM information (sizes, addresses, configuration): */
ram_addr_t below_4g_mem_size, above_4g_mem_size;
diff --git a/xen-common.c b/xen-common.c
index 909976071c..bacf962841 100644
--- a/xen-common.c
+++ b/xen-common.c
@@ -9,6 +9,7 @@
*/
#include "qemu/osdep.h"
+#include "hw/i386/pc.h"
#include "hw/xen/xen_backend.h"
#include "qmp-commands.h"
#include "sysemu/char.h"
@@ -114,6 +115,11 @@ static void xen_change_state_handler(void *opaque, int running,
static int xen_init(MachineState *ms)
{
+ PCMachineState *pcms = PC_MACHINE(ms);
+
+ /* Disable ACPI build because Xen handles it */
+ pcms->acpi_build_enabled = false;
+
xen_xc = xc_interface_open(0, 0, 0);
if (xen_xc == NULL) {
xen_pv_printf(NULL, 0, "can't open xen interface\n");