diff options
| author | Paul Mackerras <paulus@samba.org> | 2006-02-06 18:43:36 -0500 |
|---|---|---|
| committer | Paul Mackerras <paulus@samba.org> | 2006-02-06 18:43:36 -0500 |
| commit | 6cb6524d90b6e5497e79a1474bdb2f26755d1c02 (patch) | |
| tree | fd475ac8f57a6bd39c976056324d1bc79d11b4c9 /drivers/acpi/utilities/utmutex.c | |
| parent | 837e9594fc3cb9a06bddd7ecf66151334a2e13d2 (diff) | |
| parent | 410c05427a69f53851637ccb85c2212131409fbd (diff) | |
Merge ../linux-2.6
Diffstat (limited to 'drivers/acpi/utilities/utmutex.c')
| -rw-r--r-- | drivers/acpi/utilities/utmutex.c | 58 |
1 files changed, 26 insertions, 32 deletions
diff --git a/drivers/acpi/utilities/utmutex.c b/drivers/acpi/utilities/utmutex.c index 90134c56ece9..45a7244df924 100644 --- a/drivers/acpi/utilities/utmutex.c +++ b/drivers/acpi/utilities/utmutex.c | |||
| @@ -5,7 +5,7 @@ | |||
| 5 | ******************************************************************************/ | 5 | ******************************************************************************/ |
| 6 | 6 | ||
| 7 | /* | 7 | /* |
| 8 | * Copyright (C) 2000 - 2005, R. Byron Moore | 8 | * Copyright (C) 2000 - 2006, R. Byron Moore |
| 9 | * All rights reserved. | 9 | * All rights reserved. |
| 10 | * | 10 | * |
| 11 | * Redistribution and use in source and binary forms, with or without | 11 | * Redistribution and use in source and binary forms, with or without |
| @@ -214,23 +214,22 @@ acpi_status acpi_ut_acquire_mutex(acpi_mutex_handle mutex_id) | |||
| 214 | * the ACPI subsystem code. | 214 | * the ACPI subsystem code. |
| 215 | */ | 215 | */ |
| 216 | for (i = mutex_id; i < MAX_MUTEX; i++) { | 216 | for (i = mutex_id; i < MAX_MUTEX; i++) { |
| 217 | if (acpi_gbl_mutex_info[i].owner_id == this_thread_id) { | 217 | if (acpi_gbl_mutex_info[i].thread_id == this_thread_id) { |
| 218 | if (i == mutex_id) { | 218 | if (i == mutex_id) { |
| 219 | ACPI_DEBUG_PRINT((ACPI_DB_ERROR, | 219 | ACPI_ERROR((AE_INFO, |
| 220 | "Mutex [%s] already acquired by this thread [%X]\n", | 220 | "Mutex [%s] already acquired by this thread [%X]", |
| 221 | acpi_ut_get_mutex_name | 221 | acpi_ut_get_mutex_name |
| 222 | (mutex_id), | 222 | (mutex_id), |
| 223 | this_thread_id)); | 223 | this_thread_id)); |
| 224 | 224 | ||
| 225 | return (AE_ALREADY_ACQUIRED); | 225 | return (AE_ALREADY_ACQUIRED); |
| 226 | } | 226 | } |
| 227 | 227 | ||
| 228 | ACPI_DEBUG_PRINT((ACPI_DB_ERROR, | 228 | ACPI_ERROR((AE_INFO, |
| 229 | "Invalid acquire order: Thread %X owns [%s], wants [%s]\n", | 229 | "Invalid acquire order: Thread %X owns [%s], wants [%s]", |
| 230 | this_thread_id, | 230 | this_thread_id, |
| 231 | acpi_ut_get_mutex_name(i), | 231 | acpi_ut_get_mutex_name(i), |
| 232 | acpi_ut_get_mutex_name | 232 | acpi_ut_get_mutex_name(mutex_id))); |
| 233 | (mutex_id))); | ||
| 234 | 233 | ||
| 235 | return (AE_ACQUIRE_DEADLOCK); | 234 | return (AE_ACQUIRE_DEADLOCK); |
| 236 | } | 235 | } |
| @@ -253,11 +252,9 @@ acpi_status acpi_ut_acquire_mutex(acpi_mutex_handle mutex_id) | |||
| 253 | acpi_gbl_mutex_info[mutex_id].use_count++; | 252 | acpi_gbl_mutex_info[mutex_id].use_count++; |
| 254 | acpi_gbl_mutex_info[mutex_id].thread_id = this_thread_id; | 253 | acpi_gbl_mutex_info[mutex_id].thread_id = this_thread_id; |
| 255 | } else { | 254 | } else { |
| 256 | ACPI_DEBUG_PRINT((ACPI_DB_ERROR, | 255 | ACPI_EXCEPTION((AE_INFO, status, |
| 257 | "Thread %X could not acquire Mutex [%s] %s\n", | 256 | "Thread %X could not acquire Mutex [%X]", |
| 258 | this_thread_id, | 257 | this_thread_id, mutex_id)); |
| 259 | acpi_ut_get_mutex_name(mutex_id), | ||
| 260 | acpi_format_exception(status))); | ||
| 261 | } | 258 | } |
| 262 | 259 | ||
| 263 | return (status); | 260 | return (status); |
| @@ -295,9 +292,9 @@ acpi_status acpi_ut_release_mutex(acpi_mutex_handle mutex_id) | |||
| 295 | * Mutex must be acquired in order to release it! | 292 | * Mutex must be acquired in order to release it! |
| 296 | */ | 293 | */ |
| 297 | if (acpi_gbl_mutex_info[mutex_id].thread_id == ACPI_MUTEX_NOT_ACQUIRED) { | 294 | if (acpi_gbl_mutex_info[mutex_id].thread_id == ACPI_MUTEX_NOT_ACQUIRED) { |
| 298 | ACPI_DEBUG_PRINT((ACPI_DB_ERROR, | 295 | ACPI_ERROR((AE_INFO, |
| 299 | "Mutex [%s] is not acquired, cannot release\n", | 296 | "Mutex [%X] is not acquired, cannot release", |
| 300 | acpi_ut_get_mutex_name(mutex_id))); | 297 | mutex_id)); |
| 301 | 298 | ||
| 302 | return (AE_NOT_ACQUIRED); | 299 | return (AE_NOT_ACQUIRED); |
| 303 | } | 300 | } |
| @@ -313,16 +310,15 @@ acpi_status acpi_ut_release_mutex(acpi_mutex_handle mutex_id) | |||
| 313 | * the ACPI subsystem code. | 310 | * the ACPI subsystem code. |
| 314 | */ | 311 | */ |
| 315 | for (i = mutex_id; i < MAX_MUTEX; i++) { | 312 | for (i = mutex_id; i < MAX_MUTEX; i++) { |
| 316 | if (acpi_gbl_mutex_info[i].owner_id == this_thread_id) { | 313 | if (acpi_gbl_mutex_info[i].thread_id == this_thread_id) { |
| 317 | if (i == mutex_id) { | 314 | if (i == mutex_id) { |
| 318 | continue; | 315 | continue; |
| 319 | } | 316 | } |
| 320 | 317 | ||
| 321 | ACPI_DEBUG_PRINT((ACPI_DB_ERROR, | 318 | ACPI_ERROR((AE_INFO, |
| 322 | "Invalid release order: owns [%s], releasing [%s]\n", | 319 | "Invalid release order: owns [%s], releasing [%s]", |
| 323 | acpi_ut_get_mutex_name(i), | 320 | acpi_ut_get_mutex_name(i), |
| 324 | acpi_ut_get_mutex_name | 321 | acpi_ut_get_mutex_name(mutex_id))); |
| 325 | (mutex_id))); | ||
| 326 | 322 | ||
| 327 | return (AE_RELEASE_DEADLOCK); | 323 | return (AE_RELEASE_DEADLOCK); |
| 328 | } | 324 | } |
| @@ -338,11 +334,9 @@ acpi_status acpi_ut_release_mutex(acpi_mutex_handle mutex_id) | |||
| 338 | acpi_os_signal_semaphore(acpi_gbl_mutex_info[mutex_id].mutex, 1); | 334 | acpi_os_signal_semaphore(acpi_gbl_mutex_info[mutex_id].mutex, 1); |
| 339 | 335 | ||
| 340 | if (ACPI_FAILURE(status)) { | 336 | if (ACPI_FAILURE(status)) { |
| 341 | ACPI_DEBUG_PRINT((ACPI_DB_ERROR, | 337 | ACPI_EXCEPTION((AE_INFO, status, |
| 342 | "Thread %X could not release Mutex [%s] %s\n", | 338 | "Thread %X could not release Mutex [%X]", |
| 343 | this_thread_id, | 339 | this_thread_id, mutex_id)); |
| 344 | acpi_ut_get_mutex_name(mutex_id), | ||
| 345 | acpi_format_exception(status))); | ||
| 346 | } else { | 340 | } else { |
| 347 | ACPI_DEBUG_PRINT((ACPI_DB_MUTEX, | 341 | ACPI_DEBUG_PRINT((ACPI_DB_MUTEX, |
| 348 | "Thread %X released Mutex [%s]\n", | 342 | "Thread %X released Mutex [%s]\n", |
