I totally disagree, it is not a Linux problem.
The non-PC ports don't have this issue because the PCI config space
MMIO area of the PCI controller does not overlap PCI MMIO space at
all. So the problem simply cannot happen.
They choose to put this MMCONFIG in an area overlapping with PCI MMIO
space, which breaks both existing practice and code.
-