Files
linux/include/linux
Ethan Zhao e33ee8d5e6 PCI: Make pci_dev_is_disconnected() helper public for other drivers
[ Upstream commit 39714fd73c6b60a8d27bcc5b431afb0828bf4434 ]

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.

Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Tested-by: Haorong Ye <yehaorong@bytedance.com>
Signed-off-by: Ethan Zhao <haifeng.zhao@linux.intel.com>
Link: https://lore.kernel.org/r/20240301080727.3529832-2-haifeng.zhao@linux.intel.com
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Stable-dep-of: 4fc82cd907ac ("iommu/vt-d: Don't issue ATS Invalidation request when device is disconnected")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-03-26 18:19:36 -04:00
..
2022-11-04 12:59:25 +02:00
2023-06-16 12:27:04 -06:00
2024-01-25 15:35:39 -08:00
2023-05-20 19:20:30 +02:00
2023-05-19 23:23:52 +05:30
2023-08-23 08:21:37 +01:00
2023-11-28 17:19:55 +00:00
2022-07-05 20:25:39 +02:00
2023-09-11 15:24:16 -07:00
2023-01-19 14:46:25 +01:00
2024-01-05 15:19:42 +01:00
2023-05-31 13:06:57 +02:00
2022-09-26 10:13:13 -07:00
2023-01-13 11:48:15 +01:00
2023-05-25 09:26:19 +02:00
2023-04-17 18:01:23 +02:00
2023-01-19 16:07:40 +01:00
2023-03-06 15:49:07 -06:00
2023-01-29 15:18:33 -07:00
2023-01-29 15:18:33 -07:00
2023-02-06 19:06:58 +01:00
2023-09-01 00:29:34 +02:00
2023-03-19 10:02:04 -07:00
2023-06-13 16:49:23 +02:00
2023-09-13 10:48:48 +02:00
2023-05-01 17:50:18 -07:00
2022-06-09 21:53:09 -07:00
2023-08-04 11:02:46 +01:00
2022-06-27 06:29:12 -06:00
2022-09-08 12:59:00 -06:00
2022-09-26 13:31:20 +02:00
2023-07-14 13:47:07 -06:00
2022-07-17 17:31:38 -07:00
2022-10-03 14:03:19 -07:00
2023-08-18 10:12:10 -07:00
2023-08-15 14:57:25 -07:00
2023-08-18 10:18:59 -07:00
2022-06-19 10:38:26 +01:00
2022-07-27 14:04:52 +02:00
2023-07-11 14:12:19 -07:00
2023-01-19 09:24:30 +01:00
2022-08-02 12:34:04 -04:00
2023-06-20 20:17:10 -07:00
2023-11-20 11:58:53 +01:00
2022-10-03 17:34:32 -07:00
2022-09-26 19:46:27 -07:00
2023-08-18 10:12:25 -07:00
2023-08-21 14:28:45 -07:00
2023-06-23 16:59:30 -07:00
2024-02-05 20:14:27 +00:00
2023-06-05 09:36:39 +02:00
2023-07-18 10:07:47 +02:00
2023-11-28 17:19:54 +00:00
2023-09-29 17:20:46 -07:00
2023-03-06 09:57:07 +01:00
2022-12-20 03:13:45 +01:00
2023-08-12 09:18:47 -07:00
2023-11-28 17:19:48 +00:00
2023-10-06 11:01:23 +02:00
2023-10-06 11:01:23 +02:00
2023-05-23 12:55:12 -07:00
2023-07-15 11:34:49 -07:00
2023-06-23 16:59:28 -07:00
2023-01-19 15:01:19 +01:00
2023-05-18 19:52:31 -07:00
2023-06-11 18:22:47 +02:00
2024-01-31 16:19:01 -08:00
2023-07-18 10:07:47 +02:00
2023-06-05 09:36:39 +02:00
2023-11-28 17:19:38 +00:00
2024-01-31 16:18:47 -08:00
2022-09-07 12:42:25 +01:00
2023-08-21 13:37:26 -07:00
2022-09-29 15:20:29 +02:00
2023-08-06 08:24:55 +01:00
2023-08-07 17:55:54 +00:00
2023-08-11 21:12:47 +02:00
2023-03-16 13:08:39 -07:00
2023-11-20 11:58:56 +01:00
2022-08-28 16:52:28 +01:00
2023-03-23 17:25:46 +01:00
2023-08-24 13:27:47 -05:00
2023-04-05 20:03:01 -07:00
2023-04-21 03:02:34 -04:00
2023-08-21 14:52:16 +02:00
2022-10-24 12:12:32 -07:00
2023-08-21 13:37:27 -07:00