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


Groups > linux.kernel > #1167128

[PATCH][RT 4.1] sched/rt: Have the schedule IPI irq_work run in hard irq context

From Steven Rostedt <rostedt@goodmis.org>
Newsgroups linux.kernel
Subject [PATCH][RT 4.1] sched/rt: Have the schedule IPI irq_work run in hard irq context
Date 2015-06-17 22:00 +0200
Message-ID <pCrF8-2Ou-11@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


[ Sebastian, you'll need this for porting to 4.1 ]

As the sched rt pull work has moved to using irq_work IPI, having it
delayed to threading pretty much defeats the purpose. The handle also
expects interrupts to be disabled when called as it takes the rq locks.

Set the rt push ipi irq_work handle flag HARD_IRQ

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 kernel/sched/rt.c |    1 +
 1 file changed, 1 insertion(+)

Index: linux-test.git/kernel/sched/rt.c
===================================================================
--- linux-test.git.orig/kernel/sched/rt.c	2015-06-17 09:30:02.430137824 -0400
+++ linux-test.git/kernel/sched/rt.c	2015-06-17 15:30:57.543881386 -0400
@@ -90,6 +90,7 @@ void init_rt_rq(struct rt_rq *rt_rq)
 	rt_rq->push_cpu = nr_cpu_ids;
 	raw_spin_lock_init(&rt_rq->push_lock);
 	init_irq_work(&rt_rq->push_work, push_irq_work_func);
+	rt_rq->push_work.flags |= IRQ_WORK_HARD_IRQ;
 #endif
 #endif /* CONFIG_SMP */
 	/* We start is dequeued state, because no RT tasks are queued */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH][RT 4.1] sched/rt: Have the schedule IPI irq_work run in  hard irq context Steven Rostedt <rostedt@goodmis.org> - 2015-06-17 22:00 +0200

csiph-web