mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-07-25 10:53:34 -04:00
PCI: plda: Protect root bus removal with rescan lock
Hold the pci_rescan_remove_lock lock while stopping and removing a root bus to avoid racing with concurrent rescan or hotplug operations triggered via sysfs. Such races may lead to use-after-free issues or system crashes. Signed-off-by: Hans Zhang <18255117159@163.com> Signed-off-by: Manivannan Sadhasivam <mani@kernel.org> [bhelgaas: commit log] Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Link: https://patch.msgid.link/20260521161822.132996-10-18255117159@163.com
This commit is contained in:
committed by
Bjorn Helgaas
parent
a29812a55d
commit
4e4f9745f0
@@ -640,8 +640,10 @@ EXPORT_SYMBOL_GPL(plda_pcie_host_init);
|
||||
|
||||
void plda_pcie_host_deinit(struct plda_pcie_rp *port)
|
||||
{
|
||||
pci_lock_rescan_remove();
|
||||
pci_stop_root_bus(port->bridge->bus);
|
||||
pci_remove_root_bus(port->bridge->bus);
|
||||
pci_unlock_rescan_remove();
|
||||
|
||||
plda_pcie_irq_domain_deinit(port);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user