Re: [PATCH 0/2] PCI: Fix extended config space regression

From: Liang, Kan
Date: Tue Jan 10 2023 - 15:38:52 EST




On 2023-01-10 1:02 p.m., Bjorn Helgaas wrote:
> From: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
>
> 07eab0901ede ("efi/x86: Remove EfiMemoryMappedIO from E820 map") appeared
> in v6.2-rc1 and broke extended config space on several machines.
>
> This broke drivers that use things in extended config space, e.g., perf,
> VSEC telemetry, EDAC, QAT, etc.
>
> This happened because mmconfig-shared.c checks to see that ECAM space is
> reserved in E820 or ACPI motherboard resources. If it's not, it assumes
> ECAM doesn't work. 07eab0901ede removed some E820 entries, so it looked
> like ECAM was no longer reserved, so we stopped using it.
>
> The machines where this broke don't reserve the ECAM in ACPI PNP0C02
> devices (which seems to be what the PCI Firmware spec requires), but they
> do mention it in the EFI memory map as EfiMemoryMappedIO.
>
> Bjorn Helgaas (2):
> x86/pci: Simplify is_mmconf_reserved() messages
> x86/pci: Treat EfiMemoryMappedIO as reservation of ECAM space
>

This patch series fixes the issue on my machine.

Tested-by: Kan Liang <kan.liang@xxxxxxxxxxxxxxx>

Thanks,
Kan

> arch/x86/pci/mmconfig-shared.c | 44 +++++++++++++++++++++++++++++-----
> 1 file changed, 38 insertions(+), 6 deletions(-)
>