summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-10-02 07:59:24 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-10-02 08:05:21 +0200
commitba1ed5240b2f8c724a8efa8f652a8ba391fc92dd (patch)
treea19ab9d6a59ec9dc1e8d15da49929e4dcf863d7a /cpukit
parentpowerpc: Use wrtee for e6500 multilib (diff)
downloadrtems-ba1ed5240b2f8c724a8efa8f652a8ba391fc92dd.tar.bz2
SMP: Optimize ticket lock implementation
This reverts the relevant part of commit da06fe948c0878057e5f563ebd3dfe40c0f1b0d2. The acquire/release order is superfluous for the next ticket increment. The mutual exclusion is guaranteed by the acquire load from and release store to the next serving atomic variable.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/score/include/rtems/score/smplock.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/cpukit/score/include/rtems/score/smplock.h b/cpukit/score/include/rtems/score/smplock.h
index ccf6b5993b..f98f38a6a3 100644
--- a/cpukit/score/include/rtems/score/smplock.h
+++ b/cpukit/score/include/rtems/score/smplock.h
@@ -277,7 +277,7 @@ static inline void _SMP_ticket_lock_Do_acquire(
#endif
my_ticket =
- _Atomic_Fetch_add_uint( &lock->next_ticket, 1U, ATOMIC_ORDER_ACQ_REL );
+ _Atomic_Fetch_add_uint( &lock->next_ticket, 1U, ATOMIC_ORDER_RELAXED );
#if defined( RTEMS_PROFILING )
now_serving =