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


Groups > linux.kernel > #1348451 > unrolled thread

[PATCH RT 2/7] kernel: migrate_disable() do fastpath in atomic & irqs-off

Started bySteven Rostedt <rostedt@goodmis.org>
First post2016-03-02 21:20 +0100
Last post2016-03-02 21:20 +0100
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 2/7] kernel: migrate_disable() do fastpath in atomic & irqs-off Steven Rostedt <rostedt@goodmis.org> - 2016-03-02 21:20 +0100

#1348451 — [PATCH RT 2/7] kernel: migrate_disable() do fastpath in atomic & irqs-off

FromSteven Rostedt <rostedt@goodmis.org>
Date2016-03-02 21:20 +0100
Subject[PATCH RT 2/7] kernel: migrate_disable() do fastpath in atomic & irqs-off
Message-ID<r8lpv-4I9-1@gated-at.bofh.it>
3.4.110-rt140-rc1 stable review patch.
If anyone has any objections, please let me know.

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

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

With interrupts off it makes no sense to do the long path since we can't
leave the CPU anyway. Also we might end up in a recursion with lockdep.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 kernel/sched/core.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index cc4df0131023..7d9a53d80d22 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -3389,7 +3389,7 @@ void migrate_disable(void)
 {
 	struct task_struct *p = current;
 
-	if (in_atomic()) {
+	if (in_atomic() || irqs_disabled()) {
 #ifdef CONFIG_SCHED_DEBUG
 		p->migrate_disable_atomic++;
 #endif
@@ -3420,7 +3420,7 @@ void migrate_enable(void)
 	unsigned long flags;
 	struct rq *rq;
 
-	if (in_atomic()) {
+	if (in_atomic() || irqs_disabled()) {
 #ifdef CONFIG_SCHED_DEBUG
 		p->migrate_disable_atomic--;
 #endif
-- 
2.7.0

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web