On 2012-6-20 2:31, Yinghai Lu wrote: > > looks like MCFG is not cached when the entries is reserved through e820. > but it is cached when entries is reserved through ACPI ... > > Please check if it is possible just not cache MCFG. OOPS, my bad. The right logic should be void __init pci_mmcfg_late_init(void) { /* MMCONFIG disabled */ if ((pci_probe & PCI_PROBE_MMCONF) == 0) return; if (known_bridge) return; /* MMCONFIG hasn't been enabled yet */ if (pci_probe & PCI_PROBE_MASK & ~PCI_PROBE_MMCONF) { acpi_sfi_table_parse(ACPI_SIG_MCFG, pci_parse_mcfg); __pci_mmcfg_init(0); } if (!(pci_probe & PCI_PROBE_MASK & ~PCI_PROBE_MMCONF)) acpi_pci_cache_mcfg(); } Will send out a patch once we decide whether we should keep the MCFG cache. Thanks! Gerry -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html