diff options
author | John Crispin <john@openwrt.org> | 2014-03-18 19:21:56 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2014-03-18 19:21:56 +0000 |
commit | 332b94fbd524b944d2296b8ae0bf3db90a64ac90 (patch) | |
tree | 4eef4c2285c01b870a57a2f663612a4fe53df534 /target/linux/ramips/patches-3.10/0508-MIPS-GIC-Fix-gic_set_affinity-infinite-loop.patch | |
parent | 8a97da18e00ac36bdb5871d903044fc9b0826bfd (diff) | |
download | upstream-332b94fbd524b944d2296b8ae0bf3db90a64ac90.tar.gz upstream-332b94fbd524b944d2296b8ae0bf3db90a64ac90.tar.bz2 upstream-332b94fbd524b944d2296b8ae0bf3db90a64ac90.zip |
ralink: refresh patches
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 39949
Diffstat (limited to 'target/linux/ramips/patches-3.10/0508-MIPS-GIC-Fix-gic_set_affinity-infinite-loop.patch')
-rw-r--r-- | target/linux/ramips/patches-3.10/0508-MIPS-GIC-Fix-gic_set_affinity-infinite-loop.patch | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/target/linux/ramips/patches-3.10/0508-MIPS-GIC-Fix-gic_set_affinity-infinite-loop.patch b/target/linux/ramips/patches-3.10/0508-MIPS-GIC-Fix-gic_set_affinity-infinite-loop.patch deleted file mode 100644 index c089e5aa7f..0000000000 --- a/target/linux/ramips/patches-3.10/0508-MIPS-GIC-Fix-gic_set_affinity-infinite-loop.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 553ddf4f3f20c28ab03f87ac8c3cde5edf714675 Mon Sep 17 00:00:00 2001 -From: Tony Wu <tung7970@gmail.com> -Date: Fri, 21 Jun 2013 10:13:08 +0000 -Subject: [PATCH 022/105] MIPS: GIC: Fix gic_set_affinity infinite loop - -There is an infinite loop in gic_set_affinity. When irq_set_affinity -gets called on gic controller, it blocks forever. - -Signed-off-by: Tony Wu <tung7970@gmail.com> -Cc: Steven J. Hill <Steven.Hill@imgtec.com> -Cc: linux-mips@linux-mips.org -Patchwork: https://patchwork.linux-mips.org/patch/5537/ -Signed-off-by: Ralf Baechle <ralf@linux-mips.org> -(cherry picked from commit c214c03512b67e56dea3f4471705f8caae49553a) ---- - arch/mips/kernel/irq-gic.c | 15 +++++++-------- - 1 file changed, 7 insertions(+), 8 deletions(-) - ---- a/arch/mips/kernel/irq-gic.c -+++ b/arch/mips/kernel/irq-gic.c -@@ -219,16 +219,15 @@ static int gic_set_affinity(struct irq_d - - /* Assumption : cpumask refers to a single CPU */ - spin_lock_irqsave(&gic_lock, flags); -- for (;;) { -- /* Re-route this IRQ */ -- GIC_SH_MAP_TO_VPE_SMASK(irq, first_cpu(tmp)); - -- /* Update the pcpu_masks */ -- for (i = 0; i < NR_CPUS; i++) -- clear_bit(irq, pcpu_masks[i].pcpu_mask); -- set_bit(irq, pcpu_masks[first_cpu(tmp)].pcpu_mask); -+ /* Re-route this IRQ */ -+ GIC_SH_MAP_TO_VPE_SMASK(irq, first_cpu(tmp)); -+ -+ /* Update the pcpu_masks */ -+ for (i = 0; i < NR_CPUS; i++) -+ clear_bit(irq, pcpu_masks[i].pcpu_mask); -+ set_bit(irq, pcpu_masks[first_cpu(tmp)].pcpu_mask); - -- } - cpumask_copy(d->affinity, cpumask); - spin_unlock_irqrestore(&gic_lock, flags); - |