mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
PCI: iproc: 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-6-18255117159@163.com
This commit is contained in:
parent
2633569649
commit
a6a64e150f
|
|
@ -1529,8 +1529,10 @@ void iproc_pcie_remove(struct iproc_pcie *pcie)
|
|||
{
|
||||
struct pci_host_bridge *host = pci_host_bridge_from_priv(pcie);
|
||||
|
||||
pci_lock_rescan_remove();
|
||||
pci_stop_root_bus(host->bus);
|
||||
pci_remove_root_bus(host->bus);
|
||||
pci_unlock_rescan_remove();
|
||||
|
||||
iproc_pcie_msi_disable(pcie);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user