aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica/exmutex.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/acpica/exmutex.c')
-rw-r--r--drivers/acpi/acpica/exmutex.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/drivers/acpi/acpica/exmutex.c b/drivers/acpi/acpica/exmutex.c
index 2f0114202b05..7116bc86494d 100644
--- a/drivers/acpi/acpica/exmutex.c
+++ b/drivers/acpi/acpica/exmutex.c
@@ -6,7 +6,7 @@
6 *****************************************************************************/ 6 *****************************************************************************/
7 7
8/* 8/*
9 * Copyright (C) 2000 - 2008, Intel Corp. 9 * Copyright (C) 2000 - 2010, Intel Corp.
10 * All rights reserved. 10 * All rights reserved.
11 * 11 *
12 * Redistribution and use in source and binary forms, with or without 12 * Redistribution and use in source and binary forms, with or without
@@ -375,6 +375,14 @@ acpi_ex_release_mutex(union acpi_operand_object *obj_desc,
375 return_ACPI_STATUS(AE_AML_MUTEX_NOT_ACQUIRED); 375 return_ACPI_STATUS(AE_AML_MUTEX_NOT_ACQUIRED);
376 } 376 }
377 377
378 /* Must have a valid thread. */
379 if (!walk_state->thread) {
380 ACPI_ERROR((AE_INFO,
381 "Cannot release Mutex [%4.4s], null thread info",
382 acpi_ut_get_node_name(obj_desc->mutex.node)));
383 return_ACPI_STATUS(AE_AML_INTERNAL);
384 }
385
378 /* 386 /*
379 * The Mutex is owned, but this thread must be the owner. 387 * The Mutex is owned, but this thread must be the owner.
380 * Special case for Global Lock, any thread can release 388 * Special case for Global Lock, any thread can release
@@ -392,15 +400,6 @@ acpi_ex_release_mutex(union acpi_operand_object *obj_desc,
392 return_ACPI_STATUS(AE_AML_NOT_OWNER); 400 return_ACPI_STATUS(AE_AML_NOT_OWNER);
393 } 401 }
394 402
395 /* Must have a valid thread ID */
396
397 if (!walk_state->thread) {
398 ACPI_ERROR((AE_INFO,
399 "Cannot release Mutex [%4.4s], null thread info",
400 acpi_ut_get_node_name(obj_desc->mutex.node)));
401 return_ACPI_STATUS(AE_AML_INTERNAL);
402 }
403
404 /* 403 /*
405 * The sync level of the mutex must be equal to the current sync level. In 404 * The sync level of the mutex must be equal to the current sync level. In
406 * other words, the current level means that at least one mutex at that 405 * other words, the current level means that at least one mutex at that