ACPICA: Undo accidental checkin of not-fully-tested mutex changes
authorBob Moore <robert.moore@intel.com>
Thu, 10 Apr 2008 15:06:41 +0000 (19:06 +0400)
committerLen Brown <len.brown@intel.com>
Tue, 22 Apr 2008 18:29:28 +0000 (14:29 -0400)
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/executer/exmutex.c

index 7c70938..b8d035c 100644 (file)
@@ -85,7 +85,6 @@ void acpi_ex_unlink_mutex(union acpi_operand_object *obj_desc)
        } else {
                thread->acquired_mutex_list = obj_desc->mutex.next;
        }
-       return;
 }
 
 /*******************************************************************************
@@ -299,17 +298,6 @@ acpi_status acpi_ex_release_mutex_object(union acpi_operand_object *obj_desc)
                return (AE_NOT_ACQUIRED);
        }
 
-       /* No obj_desc->Mutex.owner_thread for Global Lock */
-
-       /*
-        * Mutex to be released must be at the head of acquired list to prevent
-        * deadlock. (The head of the list is the last mutex acquired.)
-        */
-       if (obj_desc->mutex.owner_thread &&
-           (obj_desc != obj_desc->mutex.owner_thread->acquired_mutex_list)) {
-               return (AE_AML_MUTEX_ORDER);
-       }
-
        /* Match multiple Acquires with multiple Releases */
 
        obj_desc->mutex.acquisition_depth--;
@@ -415,9 +403,6 @@ acpi_ex_release_mutex(union acpi_operand_object *obj_desc,
        }
 
        status = acpi_ex_release_mutex_object(obj_desc);
-       if (ACPI_FAILURE(status)) {
-               return_ACPI_STATUS(status);
-       }
 
        if (obj_desc->mutex.acquisition_depth == 0) {
 
@@ -426,7 +411,6 @@ acpi_ex_release_mutex(union acpi_operand_object *obj_desc,
                walk_state->thread->current_sync_level =
                    obj_desc->mutex.original_sync_level;
        }
-
        return_ACPI_STATUS(status);
 }