26 #
if defined(RTEMS_SMP)
31 == offsetof( pthread_spinlock_t, _Lock._next_ticket ),
32 POSIX_SPINLOCK_T_LOCK_NEXT_TICKET
36 #
if defined(RTEMS_SMP)
41 == offsetof( pthread_spinlock_t, _Lock._now_serving ),
42 POSIX_SPINLOCK_T_LOCK_NOW_SERVING
47 == offsetof( pthread_spinlock_t, _interrupt_state ),
48 POSIX_SPINLOCK_T_INTERRUPT_STATE
56 int pthread_spin_lock( pthread_spinlock_t *spinlock )
60 #if defined(RTEMS_SMP) && defined(RTEMS_PROFILING) 61 SMP_lock_Stats unused_stats;
62 SMP_lock_Stats_context unused_context;
65 the_spinlock = _POSIX_Spinlock_Get( spinlock );
67 #if defined(RTEMS_SMP) 74 the_spinlock->interrupt_state = level;
78 int pthread_spin_trylock( pthread_spinlock_t *spinlock )
#define _SMP_ticket_lock_Acquire(lock, stats, stats_context)
Acquires an SMP ticket lock.
#define _ISR_Local_disable(_level)
Disables interrupts on this processor.
Inlined Routines from the POSIX Spinlock Manager.
#define RTEMS_STATIC_ASSERT(_cond, _msg)
Asserts at compile time that the specified condition is satisfied.
#define RTEMS_ALIAS(_target)
Instructs the compiler to generate an alias to the specified target function.