diff options
Diffstat (limited to 'target/linux/generic/pending-4.4/091-MIPS-c-r4k-Exclude-sibling-CPUs-in-SMP-calls.patch')
-rw-r--r-- | target/linux/generic/pending-4.4/091-MIPS-c-r4k-Exclude-sibling-CPUs-in-SMP-calls.patch | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/target/linux/generic/pending-4.4/091-MIPS-c-r4k-Exclude-sibling-CPUs-in-SMP-calls.patch b/target/linux/generic/pending-4.4/091-MIPS-c-r4k-Exclude-sibling-CPUs-in-SMP-calls.patch deleted file mode 100644 index 8d5030c84b..0000000000 --- a/target/linux/generic/pending-4.4/091-MIPS-c-r4k-Exclude-sibling-CPUs-in-SMP-calls.patch +++ /dev/null @@ -1,37 +0,0 @@ -From: James Hogan <james.hogan@imgtec.com> -Date: Thu, 3 Mar 2016 21:30:42 +0000 -Subject: [PATCH] MIPS: c-r4k: Exclude sibling CPUs in SMP calls - -When performing SMP calls to foreign cores, exclude sibling CPUs from -the provided map, as we already handle the local core on the current -CPU. This prevents an IPI call from for example core 0, VPE 1 to VPE 0 -on the same core. - -Signed-off-by: James Hogan <james.hogan@imgtec.com> -Cc: Ralf Baechle <ralf@linux-mips.org> -Cc: Paul Burton <paul.burton@imgtec.com> -Cc: linux-mips@linux-mips.org ---- - ---- a/arch/mips/mm/c-r4k.c -+++ b/arch/mips/mm/c-r4k.c -@@ -96,8 +96,17 @@ static inline void r4k_on_each_cpu(unsig - void (*func) (void *info), void *info) - { - preempt_disable(); -- if (r4k_op_needs_ipi(type)) -- smp_call_function_many(&cpu_foreign_map, func, info, 1); -+ /* cpu_foreign_map and cpu_sibling_map[] undeclared when !CONFIG_SMP */ -+#ifdef CONFIG_SMP -+ if (r4k_op_needs_ipi(type)) { -+ struct cpumask mask; -+ -+ /* exclude sibling CPUs */ -+ cpumask_andnot(&mask, &cpu_foreign_map, -+ &cpu_sibling_map[smp_processor_id()]); -+ smp_call_function_many(&mask, func, info, 1); -+ } -+#endif - func(info); - preempt_enable(); - } |