>> >> >> #ifndef DEFINE_SEMAPHORE >> >> /* Legacy DECLARE_MUTEX vanished in 2.6.37 */ >> >> #define DEFINE_BINARY_SEMAPHORE(sem) DECLARE_MUTEX(sem) >> >> -#elif defined(CONFIG_PREEMPT_RT) >> >> -#define DEFINE_BINARY_SEMAPHORE(sem) DEFINE_SEMAPHORE(sem, 1) >> >> +#elif defined(CONFIG_PREEMPT_RT_FULL) >> >> +#define DEFINE_BINARY_SEMAPHORE(sem) DEFINE_SEMAPHORE(sem) >> >> #else >> >> #define DEFINE_BINARY_SEMAPHORE(sem) DEFINE_SEMAPHORE(sem) >> >> #endif >> >> > Why that change? I mean in 2.6.37, the define was CONFIG_PREEMPT_RT >> > anwyay. >> >> If DEFINE_SEMAPHORE is not defined we are below 2.6.37. So for 2.6.37 and >> above CONFIG_PREEMPT_RT was checked.
> Well, are not we in the "elif" case of the #ifndef DEFINE_SEMAPHORE, > so DEFINE_SEMAPHORE is defined, or am I missing something ? Let me explain that more in detail: DEFINE_SEMAPHORE is defined for linux >= 2.6.37 So for linux 2.6.37 we are in #elif defined(CONFIG_PREEMPT_RT) Also in linux 3.0.0 we are in that elif. Since in 3.0.0 and above CONFIG_PREEMPT_RT was changed to CONFIG_PREEMPT_RT_FULL, so we have to use the latter one instead. Regards, Christoph _______________________________________________ Xenomai mailing list [email protected] http://www.xenomai.org/mailman/listinfo/xenomai
