diff options
Diffstat (limited to 'patches/sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch')
-rw-r--r-- | patches/sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/patches/sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch b/patches/sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch deleted file mode 100644 index 530649e30789..000000000000 --- a/patches/sched-migrate_dis-enable-Use-sleeping_lock-to-annota.patch +++ /dev/null @@ -1,46 +0,0 @@ -From: Scott Wood <swood@redhat.com> -Date: Tue, 24 Sep 2019 14:36:41 +0200 -Subject: [PATCH] =?UTF-8?q?sched:=20migrate=5Fdis/enable:=20Use=20sl?= - =?UTF-8?q?eeping=5Flock=E2=80=A6()=20to=20annotate=20sleeping=20points?= -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Without this, rcu_note_context_switch() will complain if an RCU read lock -is held when migrate_enable() calls stop_one_cpu(). Likewise when -migrate_disable() calls pin_current_cpu() which calls __read_rt_lock() -- -which bypasses the part of the mutex code that calls sleeping_lock_inc(). - -Signed-off-by: Scott Wood <swood@redhat.com> -[bigeasy: use sleeping_lock_…() ] -Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> ---- - kernel/cpu.c | 2 ++ - kernel/sched/core.c | 3 +++ - 2 files changed, 5 insertions(+) - ---- a/kernel/cpu.c -+++ b/kernel/cpu.c -@@ -307,7 +307,9 @@ void pin_current_cpu(void) - cpu = smp_processor_id(); - preempt_enable(); - -+ sleeping_lock_inc(); - __read_rt_lock(cpuhp_pin); -+ sleeping_lock_dec(); - - preempt_disable(); - if (cpu != smp_processor_id()) { ---- a/kernel/sched/core.c -+++ b/kernel/sched/core.c -@@ -7355,7 +7355,10 @@ void migrate_enable(void) - - unpin_current_cpu(); - preempt_enable(); -+ -+ sleeping_lock_inc(); - stop_one_cpu(task_cpu(p), migration_cpu_stop, &arg); -+ sleeping_lock_dec(); - return; - } - } |