Commit f0c9d64a exposed an issue with the code order in acpi_setup. As of that commit, a xenfv machine type guest will no longer start if using pci passthrough. Re-order the code in that function to allow acpi_set_pci_info to be called before bailing on the other, non-related conditions. With this change I can again use pci passthrough and xenfv together.
Signed-off-by: Bruce Rogers <brog...@suse.com> --- hw/i386/acpi-build.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 2073108..1ec072f 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -2834,6 +2834,13 @@ void acpi_setup(void) AcpiBuildState *build_state; Object *vmgenid_dev; + if (!acpi_enabled) { + ACPI_BUILD_DPRINTF("ACPI disabled. Bailing out.\n"); + return; + } + + acpi_set_pci_info(); + if (!pcms->fw_cfg) { ACPI_BUILD_DPRINTF("No fw cfg. Bailing out.\n"); return; @@ -2844,15 +2851,8 @@ void acpi_setup(void) return; } - if (!acpi_enabled) { - ACPI_BUILD_DPRINTF("ACPI disabled. Bailing out.\n"); - return; - } - build_state = g_malloc0(sizeof *build_state); - acpi_set_pci_info(); - acpi_build_tables_init(&tables); acpi_build(&tables, MACHINE(pcms)); -- 1.9.0