On 05/02/2014 03:12 PM, Steven Rostedt wrote: >> This does not apply cleanly on v3.14-rt > > That's because I sent this out before 3.14-rt was released :-) Ach right. Sorry, my memory… >>> --- a/include/linux/rtmutex.h >>> +++ b/include/linux/rtmutex.h >>> @@ -62,25 +62,19 @@ struct hrtimer_sleeper; >>> # define __DEBUG_RT_MUTEX_INITIALIZER(mutexname) \ >>> , .name = #mutexname, .file = __FILE__, .line = __LINE__ >>> >>> -# define rt_mutex_init(mutex) \ >>> - do { \ >>> - raw_spin_lock_init(&(mutex)->wait_lock); \ >>> - __rt_mutex_init(mutex, #mutex); \ >>> - } while (0) >>> - >> >> The macro is the same in CONFIG_DEBUG_RT_MUTEXES and the else path. >> Shouldn't you remove both and define it before the ifdef? > > That's exactly what the patch did! Except that it defined it *after* the ifdef. > > Here's the patch again (as it was cut in the reply): > > --- a/include/linux/rtmutex.h > +++ b/include/linux/rtmutex.h > @@ -62,25 +62,19 @@ struct hrtimer_sleeper; > # define __DEBUG_RT_MUTEX_INITIALIZER(mutexname) \ > , .name = #mutexname, .file = __FILE__, .line = __LINE__ > > -# define rt_mutex_init(mutex) \ > - do { \ > - raw_spin_lock_init(&(mutex)->wait_lock); \ > - __rt_mutex_init(mutex, #mutex); \ > - } while (0) > - > extern void rt_mutex_debug_task_free(struct task_struct *tsk); > #else > # define __DEBUG_RT_MUTEX_INITIALIZER(mutexname) > > +# define rt_mutex_debug_task_free(t) do { } while (0) > +#endif > + > # define rt_mutex_init(mutex) \ > do { \ > raw_spin_lock_init(&(mutex)->wait_lock); \ > __rt_mutex_init(mutex, #mutex); \ > } while (0) > > -# define rt_mutex_debug_task_free(t) do { } while (0) > -#endif > - > #define __RT_MUTEX_INITIALIZER_PLAIN(mutexname) \ > .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(mutexname.wait_lock) \ > , .wait_list = PLIST_HEAD_INIT(mutexname.wait_list) \ > > Take special note of the movement of the "#endif". Ah. That is the trick. So lets try it again… > -- Steve Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html