Re: Bug report: the extended PCI config space is missed with 6.2-rc2

From: Tony Luck
Date: Thu Jan 05 2023 - 12:42:36 EST


On Wed, Jan 04, 2023 at 09:45:11AM -0600, Bjorn Helgaas wrote:
> My understanding is that EfiMemoryMappedIO tells the OS to map the
> area for use by runtime services, but is not intended to prevent the
> OS from using the area. Some platforms use EfiMemoryMappedIO for PCI
> host bridge apertures, and of course the OS needs to use those.
>
> If your firmware folks disagree and think Linux should be able to
> figure this out differently, I would love to have a conversation about
> how to do this.

It seems that 07eab0901ede ("efi/x86: Remove EfiMemoryMappedIO from E820 map")
is also the cause of breakage for drivers/edac/sb_edac.c. It is broken
in v6.2-rc2 and reverting this commit makes it work again.

This ancient driver probably plays fast and loose with how it ought to
access extended PCIe config space ... but it needs to do this to read various
memory controller configuration registers to do address translation from
a system physical address to a DIMM address.

-Tony