aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/events/evmisc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/events/evmisc.c')
-rw-r--r--drivers/acpi/events/evmisc.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/acpi/events/evmisc.c b/drivers/acpi/events/evmisc.c
index 2d34663dc1ed..d075062f5b89 100644
--- a/drivers/acpi/events/evmisc.c
+++ b/drivers/acpi/events/evmisc.c
@@ -461,6 +461,19 @@ acpi_status acpi_ev_acquire_global_lock(u16 timeout)
461 acpi_ev_global_lock_acquired++; 461 acpi_ev_global_lock_acquired++;
462 462
463 /* 463 /*
464 * Update the global lock handle and check for wraparound. The handle is
465 * only used for the external global lock interfaces, but it is updated
466 * here to properly handle the case where a single thread may acquire the
467 * lock via both the AML and the acpi_acquire_global_lock interfaces. The
468 * handle is therefore updated on the first acquire from a given thread
469 * regardless of where the acquisition request originated.
470 */
471 acpi_gbl_global_lock_handle++;
472 if (acpi_gbl_global_lock_handle == 0) {
473 acpi_gbl_global_lock_handle = 1;
474 }
475
476 /*
464 * Make sure that a global lock actually exists. If not, just treat 477 * Make sure that a global lock actually exists. If not, just treat
465 * the lock as a standard mutex. 478 * the lock as a standard mutex.
466 */ 479 */