From 885ec9b6e26cee684b18b36fb78a90bc3d3fc284 Mon Sep 17 00:00:00 2001 From: Con Kolivas Date: Tue, 15 Aug 2017 14:05:52 +1000 Subject: [PATCH 27/29] Reinstate resched_task in do_set_cpus_allowed to kickstart hotplug threads. --- kernel/sched/MuQSS.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/kernel/sched/MuQSS.c b/kernel/sched/MuQSS.c index 0e80cd9..1e4a934 100644 --- a/kernel/sched/MuQSS.c +++ b/kernel/sched/MuQSS.c @@ -5462,8 +5462,14 @@ void __do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask) { __do_set_cpus_allowed(p, new_mask); - if (needs_other_cpu(p, task_cpu(p))) + if (needs_other_cpu(p, task_cpu(p))) { + struct rq *rq; + + rq = __task_rq_lock(p); set_task_cpu(p, valid_task_cpu(p)); + resched_task(p); + __task_rq_unlock(rq); + } } #endif -- 2.9.3