I think Linux is missing some important _HPX functionality. Per ACPI r6.5, sec 6.2.9, OSPM uses the information returned by _HPX to determine how to configure PCI Functions that are hot-plugged into the system, to configure Functions not configured by the platform firmware during initial system boot, and to configure Functions any time they lose configuration space settings (e.g. OSPM issues a Secondary Bus Reset/Function Level Reset or Downstream Port Containment is triggered). Linux currently *does* process _HPX for hot-added devices. The spec doesn't call it out for boot-time enumeration, except for "Functions not configured by the platform firmware during initial system boot", but Linux does process _HPX for all devices enumerated at boot-time because it's not clear how to identify devices that weren't configured by firmware. But AFAICT, Linux does not do anything with _HPX in the device reset, AER, or DPC flows. I don't have any problem reports that I can say are caused by lack of _HPX after reset, but it seems like something we should fix. If we could find a system with _HPX that does something interesting, we might be able to demonstrate a defect by looking at a device before and after a reset. Bjorn