]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot()
authorInsu Yun <wuninsu@gmail.com>
Sat, 23 Jan 2016 20:44:19 +0000 (15:44 -0500)
committerChuck Anderson <chuck.anderson@oracle.com>
Thu, 26 May 2016 22:44:36 +0000 (15:44 -0700)
Orabug: 23330792

[ Upstream commit 2c3033a0664dfae91e1dee7fabac10f24354b958 ]

In acpiphp_enable_slot(), there is a missing unlock path
when error occurred.  It needs to be unlocked before returning
an error.

Signed-off-by: Insu Yun <wuninsu@gmail.com>
Cc: All applicable <stable@vger.kernel.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
(cherry picked from commit 9f4bab04f3788cd66b203c501fe30d093fe4d8d7)

Signed-off-by: Dan Duval <dan.duval@oracle.com>
drivers/pci/hotplug/acpiphp_glue.c

index bcb90e4888dd82d628337018c30d0d1712aad231..b60309ee80ed0b1cbeefd1d432b5bf925378601e 100644 (file)
@@ -954,8 +954,10 @@ int acpiphp_enable_slot(struct acpiphp_slot *slot)
 {
        pci_lock_rescan_remove();
 
-       if (slot->flags & SLOT_IS_GOING_AWAY)
+       if (slot->flags & SLOT_IS_GOING_AWAY) {
+               pci_unlock_rescan_remove();
                return -ENODEV;
+       }
 
        /* configure all functions */
        if (!(slot->flags & SLOT_ENABLED))