diff options
author | Joakim Hernberg <jhernberg@alchemy.lu> | 2017-02-16 18:40:27 +0100 |
---|---|---|
committer | Joakim Hernberg <jhernberg@alchemy.lu> | 2017-02-16 18:40:27 +0100 |
commit | dd88cbac9f2d0d7995b3c5b70212fada311d2249 (patch) | |
tree | a927d4d0e088499d4c85398dd1be184cbf9da8f0 /0001-fix-rt_mutex.patch | |
parent | 7af323eabd97f776be5809ea957f3db7f519c9b6 (diff) |
bump to 4.4.47_rt59-1
Diffstat (limited to '0001-fix-rt_mutex.patch')
-rw-r--r-- | 0001-fix-rt_mutex.patch | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/0001-fix-rt_mutex.patch b/0001-fix-rt_mutex.patch new file mode 100644 index 0000000..1f3a1f6 --- /dev/null +++ b/0001-fix-rt_mutex.patch @@ -0,0 +1,42 @@ +From 93f3bd72784ed58cbba1a32b043a842f205a631f Mon Sep 17 00:00:00 2001 +From: Sebastian Andrzej Siewior <bigeasy@linutronix.de> +Date: Fri, 10 Feb 2017 18:21:04 +0100 +Subject: rt: Drop mutex_disable() on !DEBUG configs and the GPL suffix from + export symbol + +Alex Goins reported that mutex_destroy() on RT will force a GPL only symbol +which won't link and therefore fail on a non-GPL kernel module. +This does not happen on !RT and is a regression on RT which we would like to +avoid. +I try here the easy thing and to not use rt_mutex_destroy() if +CONFIG_DEBUG_MUTEXES is not enabled. This will still break for the DEBUG +configs so instead of adding a wrapper around rt_mutex_destroy() (which we have +for rt_mutex_lock() for instance) I am simply dropping the GPL part from the +export. + +Reported-by: Alex Goins <agoins@nvidia.com> +Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> +--- + include/linux/mutex_rt.h | 5 +++++ + kernel/locking/rtmutex.c | 3 +-- + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/include/linux/mutex_rt.h b/include/linux/mutex_rt.h +index c38a44b..e0284ed 100644 +--- a/include/linux/mutex_rt.h ++++ b/include/linux/mutex_rt.h +@@ -43,7 +43,12 @@ extern void __lockfunc _mutex_unlock(struct mutex *lock); + #define mutex_lock_killable(l) _mutex_lock_killable(l) + #define mutex_trylock(l) _mutex_trylock(l) + #define mutex_unlock(l) _mutex_unlock(l) ++ ++#ifdef CONFIG_DEBUG_MUTEXES + #define mutex_destroy(l) rt_mutex_destroy(&(l)->lock) ++#else ++static inline void mutex_destroy(struct mutex *lock) {} ++#endif + + #ifdef CONFIG_DEBUG_LOCK_ALLOC + # define mutex_lock_nested(l, s) _mutex_lock_nested(l, s) +-- +cgit v0.12 |