diff options
Diffstat (limited to 'drivers/pci/hotplug/sgi_hotplug.c')
-rw-r--r-- | drivers/pci/hotplug/sgi_hotplug.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pci/hotplug/sgi_hotplug.c b/drivers/pci/hotplug/sgi_hotplug.c index ae606b3e991e..574421bc2fa6 100644 --- a/drivers/pci/hotplug/sgi_hotplug.c +++ b/drivers/pci/hotplug/sgi_hotplug.c | |||
@@ -425,6 +425,7 @@ static int enable_slot(struct hotplug_slot *bss_hotplug_slot) | |||
425 | pdevice = NULL; | 425 | pdevice = NULL; |
426 | } | 426 | } |
427 | 427 | ||
428 | acpi_scan_lock_acquire(); | ||
428 | /* | 429 | /* |
429 | * Walk the rootbus node's immediate children looking for | 430 | * Walk the rootbus node's immediate children looking for |
430 | * the slot's device node(s). There can be more than | 431 | * the slot's device node(s). There can be more than |
@@ -458,6 +459,7 @@ static int enable_slot(struct hotplug_slot *bss_hotplug_slot) | |||
458 | } | 459 | } |
459 | } | 460 | } |
460 | } | 461 | } |
462 | acpi_scan_lock_release(); | ||
461 | } | 463 | } |
462 | 464 | ||
463 | /* Call the driver for the new device */ | 465 | /* Call the driver for the new device */ |
@@ -508,6 +510,7 @@ static int disable_slot(struct hotplug_slot *bss_hotplug_slot) | |||
508 | /* Get the rootbus node pointer */ | 510 | /* Get the rootbus node pointer */ |
509 | phandle = PCI_CONTROLLER(slot->pci_bus)->acpi_handle; | 511 | phandle = PCI_CONTROLLER(slot->pci_bus)->acpi_handle; |
510 | 512 | ||
513 | acpi_scan_lock_acquire(); | ||
511 | /* | 514 | /* |
512 | * Walk the rootbus node's immediate children looking for | 515 | * Walk the rootbus node's immediate children looking for |
513 | * the slot's device node(s). There can be more than | 516 | * the slot's device node(s). There can be more than |
@@ -538,7 +541,7 @@ static int disable_slot(struct hotplug_slot *bss_hotplug_slot) | |||
538 | acpi_bus_trim(device); | 541 | acpi_bus_trim(device); |
539 | } | 542 | } |
540 | } | 543 | } |
541 | 544 | acpi_scan_lock_release(); | |
542 | } | 545 | } |
543 | 546 | ||
544 | /* Free the SN resources assigned to the Linux device.*/ | 547 | /* Free the SN resources assigned to the Linux device.*/ |