diff options
| -rw-r--r-- | drivers/pci/hotplug/acpiphp_glue.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pci/hotplug/acpiphp_glue.c b/drivers/pci/hotplug/acpiphp_glue.c index 6a4b4b734fbd..6e5bd79af810 100644 --- a/drivers/pci/hotplug/acpiphp_glue.c +++ b/drivers/pci/hotplug/acpiphp_glue.c | |||
| @@ -852,6 +852,7 @@ static void hotplug_event(acpi_handle handle, u32 type, void *data) | |||
| 852 | 852 | ||
| 853 | mutex_unlock(&acpiphp_context_lock); | 853 | mutex_unlock(&acpiphp_context_lock); |
| 854 | 854 | ||
| 855 | pci_lock_rescan_remove(); | ||
| 855 | acpi_get_name(handle, ACPI_FULL_PATHNAME, &buffer); | 856 | acpi_get_name(handle, ACPI_FULL_PATHNAME, &buffer); |
| 856 | 857 | ||
| 857 | switch (type) { | 858 | switch (type) { |
| @@ -905,6 +906,7 @@ static void hotplug_event(acpi_handle handle, u32 type, void *data) | |||
| 905 | break; | 906 | break; |
| 906 | } | 907 | } |
| 907 | 908 | ||
| 909 | pci_unlock_rescan_remove(); | ||
| 908 | if (bridge) | 910 | if (bridge) |
| 909 | put_bridge(bridge); | 911 | put_bridge(bridge); |
| 910 | } | 912 | } |
| @@ -915,11 +917,9 @@ static void hotplug_event_work(void *data, u32 type) | |||
| 915 | acpi_handle handle = context->handle; | 917 | acpi_handle handle = context->handle; |
| 916 | 918 | ||
| 917 | acpi_scan_lock_acquire(); | 919 | acpi_scan_lock_acquire(); |
| 918 | pci_lock_rescan_remove(); | ||
| 919 | 920 | ||
| 920 | hotplug_event(handle, type, context); | 921 | hotplug_event(handle, type, context); |
| 921 | 922 | ||
| 922 | pci_unlock_rescan_remove(); | ||
| 923 | acpi_scan_lock_release(); | 923 | acpi_scan_lock_release(); |
| 924 | acpi_evaluate_hotplug_ost(handle, type, ACPI_OST_SC_SUCCESS, NULL); | 924 | acpi_evaluate_hotplug_ost(handle, type, ACPI_OST_SC_SUCCESS, NULL); |
| 925 | put_bridge(context->func.parent); | 925 | put_bridge(context->func.parent); |
