aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/acpi/executer/exmutex.c16
1 files changed, 0 insertions, 16 deletions
diff --git a/drivers/acpi/executer/exmutex.c b/drivers/acpi/executer/exmutex.c
index 7c70938eef89..b8d035c00b61 100644
--- a/drivers/acpi/executer/exmutex.c
+++ b/drivers/acpi/executer/exmutex.c
@@ -85,7 +85,6 @@ void acpi_ex_unlink_mutex(union acpi_operand_object *obj_desc)
85 } else { 85 } else {
86 thread->acquired_mutex_list = obj_desc->mutex.next; 86 thread->acquired_mutex_list = obj_desc->mutex.next;
87 } 87 }
88 return;
89} 88}
90 89
91/******************************************************************************* 90/*******************************************************************************
@@ -299,17 +298,6 @@ acpi_status acpi_ex_release_mutex_object(union acpi_operand_object *obj_desc)
299 return (AE_NOT_ACQUIRED); 298 return (AE_NOT_ACQUIRED);
300 } 299 }
301 300
302 /* No obj_desc->Mutex.owner_thread for Global Lock */
303
304 /*
305 * Mutex to be released must be at the head of acquired list to prevent
306 * deadlock. (The head of the list is the last mutex acquired.)
307 */
308 if (obj_desc->mutex.owner_thread &&
309 (obj_desc != obj_desc->mutex.owner_thread->acquired_mutex_list)) {
310 return (AE_AML_MUTEX_ORDER);
311 }
312
313 /* Match multiple Acquires with multiple Releases */ 301 /* Match multiple Acquires with multiple Releases */
314 302
315 obj_desc->mutex.acquisition_depth--; 303 obj_desc->mutex.acquisition_depth--;
@@ -415,9 +403,6 @@ acpi_ex_release_mutex(union acpi_operand_object *obj_desc,
415 } 403 }
416 404
417 status = acpi_ex_release_mutex_object(obj_desc); 405 status = acpi_ex_release_mutex_object(obj_desc);
418 if (ACPI_FAILURE(status)) {
419 return_ACPI_STATUS(status);
420 }
421 406
422 if (obj_desc->mutex.acquisition_depth == 0) { 407 if (obj_desc->mutex.acquisition_depth == 0) {
423 408
@@ -426,7 +411,6 @@ acpi_ex_release_mutex(union acpi_operand_object *obj_desc,
426 walk_state->thread->current_sync_level = 411 walk_state->thread->current_sync_level =
427 obj_desc->mutex.original_sync_level; 412 obj_desc->mutex.original_sync_level;
428 } 413 }
429
430 return_ACPI_STATUS(status); 414 return_ACPI_STATUS(status);
431} 415}
432 416