On 2024/2/22 17:02, Ethan Zhao wrote:
Make pci_dev_is_disconnected() public so that it can be called from Intel VT-d driver to quickly fix/workaround the surprise removal unplug hang issue for those ATS capable devices on PCIe switch downstream hotplug capable ports. Beside pci_device_is_present() function, this one has no config space space access, so is light enough to optimize the normal pure surprise removal and safe removal flow. Tested-by: Haorong Ye<yehaorong@xxxxxxxxxxxxx> Signed-off-by: Ethan Zhao<haifeng.zhao@xxxxxxxxxxxxxxx> --- drivers/pci/pci.h | 5 ----- include/linux/pci.h | 5 +++++ 2 files changed, 5 insertions(+), 5 deletions(-)
Hi PCI subsystem maintainers, The iommu drivers (including, but not limited to, the Intel VT-d driver) require a helper to check the physical presence of a PCI device in two scenarios: - During the iommu_release_device() path: This ensures the device is physically present before sending device TLB invalidation to device. - During the device driver lifecycle when a device TLB invalidation timeout event is generated by the IOMMU hardware: This helps handle situations where the device might have been hot-removed. While there may be some adjustments needed in patch 3/3, I'd like to confirm with you whether it's feasible to expose this helper for general use within the iommu subsystem. If you agree with this change, I can route this patch to Linus through the iommu tree with an "acked-by" or "reviewed-by" tag from you. Best regards, baolu