On 2023/12/13 11:46, Ethan Zhao wrote:
For those endpoint devices connect to system via hotplug capable ports, users could request a warm reset to the device by flapping device's link through setting the slot's link control register, as pciehpt_ist() DLLSC interrupt sequence response, pciehp will unload the device driver and then power it off.
Is it possible for pciehp to disable ATS on the device before unloading the driver? Or should the device follow some specific steps to warm reset the device? What happens if IOMMU issues device TLB invalidation after link down but before pci_dev_is_disconnected() returns true? Best regards, baolu