On Fri, 15 Feb 2008, Yinghai Lu wrote: > From: Robert Hancock <[EMAIL PROTECTED]> > > This path adds validation of the MMCONFIG table against the ACPI reserved > motherboard resources. If the MMCONFIG table is found to be reserved in > ACPI, we don't bother checking the E820 table. The PCI Express firmware > spec apparently tells BIOS developers that reservation in ACPI is required > and E820 reservation is optional, so checking against ACPI first makes > sense. Many BIOSes don't reserve the MMCONFIG region in E820 even though > it is perfectly functional, the existing check needlessly disables MMCONFIG > in these cases. > > In order to do this, MMCONFIG setup has been split into two phases. If PCI > configuration type 1 is not available then MMCONFIG is enabled early as > before. Otherwise, it is enabled later after the ACPI interpreter is > enabled, since we need to be able to execute control methods in order to > check the ACPI reserved resources. Presently this is just triggered off > the end of ACPI interpreter initialization. > > There are a few other behavioral changes here: > > - Validate all MMCONFIG configurations provided, not just the first one. > > - Validate the entire required length of each configuration according to > the provided ending bus number is reserved, not just the minimum required > allocation. > > - Validate that the area is reserved even if we read it from the chipset > directly and not from the MCFG table. This catches the case where the > BIOS didn't set the location properly in the chipset and has mapped it > over other things it shouldn't have. > > This also cleans up the MMCONFIG initialization functions so that they > simply do nothing if MMCONFIG is not compiled in. > > Based on an original patch by Rajesh Shah from Intel.
Applied. Thanks, tglx -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/