summaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt2012-02-08 19:11:01 +0100
committerBenjamin Herrenschmidt2012-02-14 05:01:38 +0100
commit7a768d30caa30e66ba89659f1845cc35b1bfc715 (patch)
tree6a25b21e3dbe60e74513ac60b0f0071498edf7f8 /arch/powerpc
parentpowerpc: Implement GET_IP/SET_IP (diff)
downloadkernel-qcow2-linux-7a768d30caa30e66ba89659f1845cc35b1bfc715.tar.gz
kernel-qcow2-linux-7a768d30caa30e66ba89659f1845cc35b1bfc715.tar.xz
kernel-qcow2-linux-7a768d30caa30e66ba89659f1845cc35b1bfc715.zip
powerpc/wsp: Fix IRQ affinity setting
We call the cache_hwirq_map() function with a linux IRQ number but it expects a HW irq number. This triggers a BUG on multic-chip setups in addition to not doing the right thing. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r--arch/powerpc/platforms/wsp/ics.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/wsp/ics.c b/arch/powerpc/platforms/wsp/ics.c
index 576874392543..97fe82ee8633 100644
--- a/arch/powerpc/platforms/wsp/ics.c
+++ b/arch/powerpc/platforms/wsp/ics.c
@@ -346,7 +346,7 @@ static int wsp_chip_set_affinity(struct irq_data *d,
* For the moment only implement delivery to all cpus or one cpu.
* Get current irq_server for the given irq
*/
- ret = cache_hwirq_map(ics, d->irq, cpumask);
+ ret = cache_hwirq_map(ics, hw_irq, cpumask);
if (ret == -1) {
char cpulist[128];
cpumask_scnprintf(cpulist, sizeof(cpulist), cpumask);