summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src/mutex.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-08-31 13:37:52 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-09-01 12:50:56 +0200
commit44f3ea917f5c4a1cc23107dfe1a5d44170eabc56 (patch)
treeb27e9b1308f5ab029ceaf4a8fdc0f85398de72d9 /cpukit/score/src/mutex.c
parentarm: Replace __sync_synchronize() implementation (diff)
downloadrtems-44f3ea917f5c4a1cc23107dfe1a5d44170eabc56.tar.bz2
score: Fix return status of mutex try acquire
This fixes a copy and paste error (from libbsd).
Diffstat (limited to 'cpukit/score/src/mutex.c')
-rw-r--r--cpukit/score/src/mutex.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/cpukit/score/src/mutex.c b/cpukit/score/src/mutex.c
index f7cc12107f..ae637dda84 100644
--- a/cpukit/score/src/mutex.c
+++ b/cpukit/score/src/mutex.c
@@ -268,7 +268,7 @@ int _Mutex_Try_acquire( struct _Mutex_Control *_mutex )
ISR_lock_Context lock_context;
Thread_Control *executing;
Thread_Control *owner;
- int success;
+ int eno;
mutex = _Mutex_Get( _mutex );
executing = _Mutex_Queue_acquire( mutex, &lock_context );
@@ -278,14 +278,14 @@ int _Mutex_Try_acquire( struct _Mutex_Control *_mutex )
if ( __predict_true( owner == NULL ) ) {
mutex->owner = executing;
++executing->resource_count;
- success = 1;
+ eno = 0;
} else {
- success = 0;
+ eno = EBUSY;
}
_Mutex_Queue_release( mutex, &lock_context );
- return success;
+ return eno;
}
void _Mutex_Release( struct _Mutex_Control *_mutex )
@@ -393,7 +393,7 @@ int _Mutex_recursive_Try_acquire( struct _Mutex_recursive_Control *_mutex )
ISR_lock_Context lock_context;
Thread_Control *executing;
Thread_Control *owner;
- int success;
+ int eno;
mutex = _Mutex_recursive_Get( _mutex );
executing = _Mutex_Queue_acquire( &mutex->Mutex, &lock_context );
@@ -403,17 +403,17 @@ int _Mutex_recursive_Try_acquire( struct _Mutex_recursive_Control *_mutex )
if ( __predict_true( owner == NULL ) ) {
mutex->Mutex.owner = executing;
++executing->resource_count;
- success = 1;
+ eno = 0;
} else if ( owner == executing ) {
++mutex->nest_level;
- success = 1;
+ eno = 0;
} else {
- success = 0;
+ eno = EBUSY;
}
_Mutex_Queue_release( &mutex->Mutex, &lock_context );
- return success;
+ return eno;
}
void _Mutex_recursive_Release( struct _Mutex_recursive_Control *_mutex )