On 2025-01-30 06:12, Jan Beulich wrote:
In order for amd_iommu_detect_one_acpi()'s call to pci_ro_device() to
have permanent effect, pci_segments_init() needs to be called ahead of
making it there. Without this we're losing segment 0's r/o map, and thus
we're losing write-protection of the PCI devices representing IOMMUs.
Which in turn means that half-way recent Linux Dom0 will, as it boots,
turn off MSI on these devices, thus preventing any IOMMU events (faults
in particular) from being reported on pre-x2APIC hardware.
As the acpi_iommu_init() invocation was moved ahead of
acpi_mmcfg_init()'s by the offending commit, move the call to
pci_segments_init() accordingly.
Fixes: 3950f2485bbc ("x86/x2APIC: defer probe until after IOMMU ACPI table
parsing")
Signed-off-by: Jan Beulich <jbeul...@suse.com>
Reviewed-by: Jason Andryuk <jason.andr...@amd.com>
Tested-by: Jason Andryuk <jason.andr...@amd.com>
Thanks,
Jason