diff options
Diffstat (limited to '')
-rw-r--r-- | debian/patches-rt/0307-sched-Lazy-migrate_disable-processing.patch | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/debian/patches-rt/0307-sched-Lazy-migrate_disable-processing.patch b/debian/patches-rt/0307-sched-Lazy-migrate_disable-processing.patch index 29c41aec9..c690fd903 100644 --- a/debian/patches-rt/0307-sched-Lazy-migrate_disable-processing.patch +++ b/debian/patches-rt/0307-sched-Lazy-migrate_disable-processing.patch @@ -1,7 +1,7 @@ From: Scott Wood <swood@redhat.com> Date: Sat, 12 Oct 2019 01:52:13 -0500 -Subject: [PATCH 307/351] sched: Lazy migrate_disable processing -Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=ef6c7cbc5053f8db6f2493ab56a9e0f2a9d4b523 +Subject: [PATCH 307/353] sched: Lazy migrate_disable processing +Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=59d98c89b8a1579f4a88ad4c440c28f73211b951 [ Upstream commit 425c5b38779a860062aa62219dc920d374b13c17 ] @@ -44,10 +44,10 @@ Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org> 7 files changed, 129 insertions(+), 182 deletions(-) diff --git a/include/linux/cpu.h b/include/linux/cpu.h -index a3c246214d28..81ce109caec3 100644 +index bddccdcd00ba..7f41ac9cf2ad 100644 --- a/include/linux/cpu.h +++ b/include/linux/cpu.h -@@ -122,8 +122,6 @@ extern void cpu_hotplug_disable(void); +@@ -124,8 +124,6 @@ extern void cpu_hotplug_disable(void); extern void cpu_hotplug_enable(void); void clear_tasks_mm_cpumask(int cpu); int cpu_down(unsigned int cpu); @@ -56,7 +56,7 @@ index a3c246214d28..81ce109caec3 100644 #else /* CONFIG_HOTPLUG_CPU */ -@@ -135,8 +133,6 @@ static inline int cpus_read_trylock(void) { return true; } +@@ -137,8 +135,6 @@ static inline int cpus_read_trylock(void) { return true; } static inline void lockdep_assert_cpus_held(void) { } static inline void cpu_hotplug_disable(void) { } static inline void cpu_hotplug_enable(void) { } @@ -278,10 +278,10 @@ index 4bf82665f28c..f603ea80af2e 100644 /* Interrupts are moved away from the dying cpu, reenable alloc/free */ irq_unlock_sparse(); diff --git a/kernel/sched/core.c b/kernel/sched/core.c -index 57e8dee4e7ce..a2c0f199f362 100644 +index 8cfb469b23a6..451d07a772bc 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c -@@ -1065,7 +1065,8 @@ static int migration_cpu_stop(void *data) +@@ -1068,7 +1068,8 @@ static int migration_cpu_stop(void *data) void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask) { cpumask_copy(&p->cpus_mask, new_mask); @@ -291,7 +291,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 } #if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT_BASE) -@@ -1076,8 +1077,7 @@ int __migrate_disabled(struct task_struct *p) +@@ -1079,8 +1080,7 @@ int __migrate_disabled(struct task_struct *p) EXPORT_SYMBOL_GPL(__migrate_disabled); #endif @@ -301,7 +301,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 { struct rq *rq = task_rq(p); bool queued, running; -@@ -1106,20 +1106,6 @@ static void __do_set_cpus_allowed_tail(struct task_struct *p, +@@ -1109,20 +1109,6 @@ static void __do_set_cpus_allowed_tail(struct task_struct *p, set_curr_task(rq, p); } @@ -322,7 +322,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 /* * Change a given task's CPU affinity. Migrate the thread to a * proper CPU and schedule it away if the CPU it's executing on -@@ -1179,7 +1165,8 @@ static int __set_cpus_allowed_ptr(struct task_struct *p, +@@ -1182,7 +1168,8 @@ static int __set_cpus_allowed_ptr(struct task_struct *p, } /* Can the task run on the task's current CPU? If so, we're done */ @@ -332,7 +332,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 goto out; if (task_running(rq, p) || p->state == TASK_WAKING) { -@@ -3459,6 +3446,8 @@ pick_next_task(struct rq *rq, struct task_struct *prev, struct rq_flags *rf) +@@ -3461,6 +3448,8 @@ pick_next_task(struct rq *rq, struct task_struct *prev, struct rq_flags *rf) BUG(); } @@ -341,7 +341,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 /* * __schedule() is the main scheduler function. * -@@ -3529,6 +3518,9 @@ static void __sched notrace __schedule(bool preempt) +@@ -3531,6 +3520,9 @@ static void __sched notrace __schedule(bool preempt) rq_lock(rq, &rf); smp_mb__after_spinlock(); @@ -351,7 +351,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 /* Promote REQ to ACT */ rq->clock_update_flags <<= 1; update_rq_clock(rq); -@@ -5778,6 +5770,8 @@ static void migrate_tasks(struct rq *dead_rq, struct rq_flags *rf) +@@ -5780,6 +5772,8 @@ static void migrate_tasks(struct rq *dead_rq, struct rq_flags *rf) BUG_ON(!next); put_prev_task(rq, next); @@ -360,7 +360,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 /* * Rules for changing task_struct::cpus_mask are holding * both pi_lock and rq->lock, such that holding either -@@ -7242,14 +7236,9 @@ update_nr_migratory(struct task_struct *p, long delta) +@@ -7244,14 +7238,9 @@ update_nr_migratory(struct task_struct *p, long delta) static inline void migrate_disable_update_cpus_allowed(struct task_struct *p) { @@ -375,7 +375,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 } static inline void -@@ -7267,54 +7256,35 @@ migrate_enable_update_cpus_allowed(struct task_struct *p) +@@ -7269,54 +7258,35 @@ migrate_enable_update_cpus_allowed(struct task_struct *p) void migrate_disable(void) { @@ -446,7 +446,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 WARN_ON_ONCE(p->migrate_disable <= 0); if (p->migrate_disable > 1) { -@@ -7324,67 +7294,69 @@ void migrate_enable(void) +@@ -7326,67 +7296,69 @@ void migrate_enable(void) preempt_disable(); @@ -556,7 +556,7 @@ index 57e8dee4e7ce..a2c0f199f362 100644 #endif barrier(); } -@@ -7395,20 +7367,14 @@ void migrate_enable(void) +@@ -7397,20 +7369,14 @@ void migrate_enable(void) #ifdef CONFIG_SCHED_DEBUG struct task_struct *p = current; |