summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2006-12-04 14:16:26 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2006-12-04 14:16:26 +0000
commit6bc7a5e1a38d6566fb404bcb736bf96926f4b1fe (patch)
treeb1391462c49d831b954c61d2712228fa7b87ddc0 /cpukit/rtems
parent2006-12-04 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-6bc7a5e1a38d6566fb404bcb736bf96926f4b1fe.tar.bz2
2006-12-04 Joel Sherrill <joel.sherrill@oarcorp.com>
* posix/src/prwlockunlock.c, rtems/Makefile.am, rtems/src/barrierrelease.c, rtems/src/barrierwait.c, score/src/corerwlockobtainread.c, score/src/corerwlockrelease.c: Complete implementation of barrier as the rest of the test code is now implemented. Also add blocking code to rwlock.
Diffstat (limited to 'cpukit/rtems')
-rw-r--r--cpukit/rtems/Makefile.am3
-rw-r--r--cpukit/rtems/src/barrierrelease.c3
-rw-r--r--cpukit/rtems/src/barrierwait.c1
3 files changed, 4 insertions, 3 deletions
diff --git a/cpukit/rtems/Makefile.am b/cpukit/rtems/Makefile.am
index b59b132896..1eb5bbc811 100644
--- a/cpukit/rtems/Makefile.am
+++ b/cpukit/rtems/Makefile.am
@@ -72,7 +72,8 @@ librtems_a_SOURCES += src/intr.c src/intrbody.c src/intrcatch.c
## BARRIER_C_FILES
librtems_a_SOURCES += src/barrier.c src/barriercreate.c src/barrierdelete.c \
- src/barrierident.c src/barriertranslatereturncode.c src/barrierwait.c
+ src/barrierident.c src/barriertranslatereturncode.c src/barrierrelease.c \
+ src/barrierwait.c
## CLOCK_C_FILES
librtems_a_SOURCES += src/rtclock.c src/clockget.c src/clockset.c \
diff --git a/cpukit/rtems/src/barrierrelease.c b/cpukit/rtems/src/barrierrelease.c
index 0d7f7622ef..25f6a5fc01 100644
--- a/cpukit/rtems/src/barrierrelease.c
+++ b/cpukit/rtems/src/barrierrelease.c
@@ -57,8 +57,7 @@ rtems_status_code rtems_barrier_release(
case OBJECTS_LOCAL:
*released = _CORE_barrier_Release( &the_barrier->Barrier, id, NULL );
_Thread_Enable_dispatch();
- return _Barrier_Translate_core_barrier_return_code(
- _Thread_Executing->Wait.return_code );
+ return RTEMS_SUCCESSFUL;
}
diff --git a/cpukit/rtems/src/barrierwait.c b/cpukit/rtems/src/barrierwait.c
index 754e1ba969..5f282552ae 100644
--- a/cpukit/rtems/src/barrierwait.c
+++ b/cpukit/rtems/src/barrierwait.c
@@ -58,6 +58,7 @@ rtems_status_code rtems_barrier_wait(
timeout,
NULL
);
+ _Thread_Enable_dispatch();
return _Barrier_Translate_core_barrier_return_code(
_Thread_Executing->Wait.return_code );