android_kernel_motorola_sm6375/drivers/pci
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Ilpo Järvinen acf5c9d8b3 PCI: Fix lock symmetry in pci_slot_unlock()
commit f3efb9569b4a21354ef2caf7ab0608a3e14cc6e4 upstream.

The commit a4e772898f8b ("PCI: Add missing bridge lock to pci_bus_lock()")
made the lock function to call depend on dev->subordinate but left
pci_slot_unlock() unmodified creating locking asymmetry compared with
pci_slot_lock().

Because of the asymmetric lock handling, the same bridge device is unlocked
twice. First pci_bus_unlock() unlocks bus->self and then pci_slot_unlock()
will unconditionally unlock the same bridge device.

Move pci_dev_unlock() inside an else branch to match the logic in
pci_slot_lock().

Fixes: a4e772898f8b ("PCI: Add missing bridge lock to pci_bus_lock()")
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Lukas Wunner <lukas@wunner.de>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20250505115412.37628-1-ilpo.jarvinen@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-06-27 11:02:52 +01:00
..
controller PCI: imx6: Skip controller_id generation logic for i.MX7D 2025-06-04 14:32:25 +02:00
endpoint PCI: endpoint: Destroy the EPC device in devm_pci_epc_destroy() 2025-03-13 12:42:58 +01:00
hotplug PCI: pciehp: Don't enable HPIE when resuming in poll mode 2025-04-10 14:29:40 +02:00
pcie PCI/portdrv: Only disable pciehp interrupts early when needed 2025-04-10 14:29:40 +02:00
switch
access.c
ats.c
bus.c
ecam.c
host-bridge.c
iov.c
irq.c
Kconfig
Makefile
mmap.c
msi.c
of.c
p2pdma.c
pci-acpi.c
pci-bridge-emul.c
pci-bridge-emul.h
pci-driver.c
pci-label.c
pci-mid.c
pci-pf-stub.c
pci-stub.c
pci-sysfs.c PCI: Add 'reset_subordinate' to reset hierarchy below bridge 2024-12-14 19:44:54 +01:00
pci.c PCI: Fix lock symmetry in pci_slot_unlock() 2025-06-27 11:02:52 +01:00
pci.h PCI: Add 'reset_subordinate' to reset hierarchy below bridge 2024-12-14 19:44:54 +01:00
probe.c PCI: Fix reference leak in pci_alloc_child_bus() 2025-05-02 07:39:17 +02:00
proc.c
quirks.c PCI: Add ACS quirk for Loongson PCIe 2025-06-27 11:02:52 +01:00
remove.c
rom.c
search.c
setup-bus.c PCI: Fix old_size lower bound in calculate_iosize() too 2025-06-04 14:32:33 +02:00
setup-irq.c
setup-res.c
slot.c PCI: Fix use-after-free of slot->bus on hot remove 2024-12-14 19:44:36 +01:00
syscall.c
vc.c
vpd.c
xen-pcifront.c