Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1489651 > unrolled thread

[PATCH RT 02/10] timers: wakeup all timer waiters without holding the base lock

Started bySteven Rostedt <rostedt@goodmis.org>
First post2016-09-23 01:20 +0200
Last post2016-09-23 01:20 +0200
Articles 1 — 1 participant

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH RT 02/10] timers: wakeup all timer waiters without holding the base lock Steven Rostedt <rostedt@goodmis.org> - 2016-09-23 01:20 +0200

#1489651 — [PATCH RT 02/10] timers: wakeup all timer waiters without holding the base lock

FromSteven Rostedt <rostedt@goodmis.org>
Date2016-09-23 01:20 +0200
Subject[PATCH RT 02/10] timers: wakeup all timer waiters without holding the base lock
Message-ID<sklrA-4iR-29@gated-at.bofh.it>
3.18.42-rt45-rc1 stable review patch.
If anyone has any objections, please let me know.

------------------

From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>

There should be no need to hold the base lock during the wakeup. There
should be no boosting involved, the wakeup list has its own lock so it
should be safe to do this without the lock.

Cc: stable-rt@vger.kernel.org
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 kernel/time/timer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/time/timer.c b/kernel/time/timer.c
index 495de6337357..0df5cbfbcb5b 100644
--- a/kernel/time/timer.c
+++ b/kernel/time/timer.c
@@ -1281,8 +1281,8 @@ static inline void __run_timers(struct tvec_base *base)
 			}
 		}
 	}
-	wakeup_timer_waiters(base);
 	spin_unlock_irq(&base->lock);
+	wakeup_timer_waiters(base);
 }
 
 #ifdef CONFIG_NO_HZ_COMMON
-- 
2.8.1

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web