summaryrefslogtreecommitdiffstats
path: root/cpukit/rtems/src/eventsurrender.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-06-29 15:33:26 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-06-30 07:57:44 +0200
commit029877282edb8aa7a2095702742ce95c8246729e (patch)
treeb1fbd380bac4071d05712957f9d03c6cc7521299 /cpukit/rtems/src/eventsurrender.c
parentscore: Fix thread lock on SMP configurations (diff)
downloadrtems-029877282edb8aa7a2095702742ce95c8246729e.tar.bz2
score: Avoid atomic fences for thread wait flags
The use of atomic fences is brittle and may break due to changes in different areas which is hard to manage.
Diffstat (limited to 'cpukit/rtems/src/eventsurrender.c')
-rw-r--r--cpukit/rtems/src/eventsurrender.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/cpukit/rtems/src/eventsurrender.c b/cpukit/rtems/src/eventsurrender.c
index 576670b0b7..a9bef5916c 100644
--- a/cpukit/rtems/src/eventsurrender.c
+++ b/cpukit/rtems/src/eventsurrender.c
@@ -91,11 +91,8 @@ rtems_status_code _Event_Surrender(
_Event_Satisfy( the_thread, event, pending_events, seized_events );
- /* See _Event_Seize() */
- _Atomic_Fence( ATOMIC_ORDER_RELEASE );
-
ready_again = wait_class | THREAD_WAIT_STATE_READY_AGAIN;
- success = _Thread_Wait_flags_try_change_critical(
+ success = _Thread_Wait_flags_try_change_release(
the_thread,
wait_class | THREAD_WAIT_STATE_INTEND_TO_BLOCK,
ready_again