summaryrefslogtreecommitdiff
path: root/drivers/pci/remove.c
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2025-10-03 12:13:12 -0500
committerBjorn Helgaas <bhelgaas@google.com>2025-10-03 12:13:12 -0500
commit3d56c863189dcf72118326bb4043f24907cc4f5c (patch)
tree2811e5af624660222f8d684ff1aaedbf2f7ddef8 /drivers/pci/remove.c
parentfead6a0b15bf3b33dba877efec6b4e7b4cc4abc3 (diff)
parent60e7b5aa85712f7f2fc75b2e9d28444de88ab47f (diff)
Merge branch 'pci/virtualization'
- Add rescan/remove locking when enabling/disabling SR-IOV, which solves list corruption on s390, where disabling SR-IOV also generates hotplug events (Niklas Schnelle) - Add lockdep assertion in pci_stop_and_remove_bus_device() to catch device removal without appropriate locking (Niklas Schnelle) * pci/virtualization: PCI: Add lockdep assertion in pci_stop_and_remove_bus_device() PCI/IOV: Add PCI rescan-remove locking when enabling/disabling SR-IOV
Diffstat (limited to 'drivers/pci/remove.c')
-rw-r--r--drivers/pci/remove.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/pci/remove.c b/drivers/pci/remove.c
index 16f21edbc29d..ce5c25adef55 100644
--- a/drivers/pci/remove.c
+++ b/drivers/pci/remove.c
@@ -140,6 +140,7 @@ static void pci_remove_bus_device(struct pci_dev *dev)
*/
void pci_stop_and_remove_bus_device(struct pci_dev *dev)
{
+ lockdep_assert_held(&pci_rescan_remove_lock);
pci_stop_bus_device(dev);
pci_remove_bus_device(dev);
}