[PATCH RT] time/hrtimer: disable that mode check

From: Sebastian Andrzej Siewior
Date: Wed Dec 13 2017 - 08:58:46 EST


On -RT we push all timers by default into the soft-mode. The
"start/update" code does not use that SOFT bit so we always see that
warning.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
---
I am going to fold it into the original patch since only v4.14 is
affected.

kernel/time/hrtimer.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
index 2fff8790bc56..f4df924d4b48 100644
--- a/kernel/time/hrtimer.c
+++ b/kernel/time/hrtimer.c
@@ -422,8 +422,10 @@ static inline void debug_hrtimer_activate(struct hrtimer *timer,
* Check whether the HRTIMER_MODE_SOFT bit and hrtimer.is_soft
* match, when a timer is started via__hrtimer_start_range_ns().
*/
+#ifndef CONFIG_PREEMPT_RT_BASE
if (modecheck)
- WARN_ON_ONCE((mode & HRTIMER_MODE_SOFT) & !timer->is_soft);
+ WARN_ON_ONCE(!(mode & HRTIMER_MODE_SOFT) ^ !timer->is_soft);
+#endif

debug_object_activate(timer, &hrtimer_debug_descr);
}
--
2.15.0