On Mon, Dec 08, 2014 at 04:07:59PM +0000, Igor Mammedov wrote: > this series is an early attempt to shave off a bunch of > not directly related patches from already big dynamic > AML series (although it's dependency for it) > > main target of this series is: > > pc: acpi-build: replace recursive PCI bus tree generation with loop > based > > A simplified PCI description generation, which replaces tree > structure with a set of ACPI scopes and allows later easily replace > template patching with direct AML generation with further > simplification.
I considered this early on. Unfortunately using scopes almost doubles the ACPI size for deep hierarchies. I'm fine with flattening the generation code but I think we are better off keeping the AML hierarchical. More on the patch itself. > Tested: on XPsp3 to WS2012R2 and REHL6/7 guests. > > Git tree for testing: > https://github.com/imammedo/qemu/commits/acpi_pci_gen_simplification > > > Igor Mammedov (9): > pc: acpi: fix WindowsXP BSOD when memory hotplug is enabled > pc: acpi: decribe bridge device as not hotpluggable > pc: acpi-build: cleanup AcpiPmInfo initialization > acpi: build_append_nameseg(): add padding if necessary > acpi: move generic aml building helpers into dedictated file > acpi: add build_append_namestring() helper > acpi: replace opencoded notify codes with named values > acpi: drop min-bytes in build_package() > pc: acpi-build: replace recursive PCI bus tree generation with loop > based > > hw/acpi/Makefile.objs | 1 + > hw/acpi/acpi_gen_utils.c | 247 +++++++++++++++++ > hw/i386/acpi-build.c | 561 > +++++++++++++------------------------- > hw/i386/acpi-dsdt-cpu-hotplug.dsl | 1 + > include/hw/acpi/acpi_gen_utils.h | 29 ++ > 5 files changed, 462 insertions(+), 377 deletions(-) > create mode 100644 hw/acpi/acpi_gen_utils.c > create mode 100644 include/hw/acpi/acpi_gen_utils.h > > -- > 1.8.3.1