diff options
author | Kumar Gala <galak@kernel.crashing.org> | 2008-12-02 19:37:01 (GMT) |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-12-02 23:50:40 (GMT) |
commit | 7a0d7940e7c7c143520e38900ddd4e217d3c6640 (patch) | |
tree | f2eb26e4c2f1eb6aa1033a50d935a265ff51bb18 /arch | |
parent | 9ff473b9a72942c5ac0ad35607cae28d8d59ed7a (diff) | |
download | linux-7a0d7940e7c7c143520e38900ddd4e217d3c6640.tar.xz |
powerpc: Use physical cpu id when setting the processor affinity
In the CONFIG_SMP case the irq_choose_cpu() code was returning back
a logical cpu id not the physical id. We were writing that directly
into the HW register.
We need to be calling get_hard_smp_processor_id() so irq_choose_cpu()
always returns a physical cpu id.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/sysdev/mpic.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c index b24e1d08..1890fb0 100644 --- a/arch/powerpc/sysdev/mpic.c +++ b/arch/powerpc/sysdev/mpic.c @@ -600,7 +600,7 @@ static int irq_choose_cpu(unsigned int virt_irq) cpuid = first_cpu(tmp); } - return cpuid; + return get_hard_smp_processor_id(cpuid); } #else static int irq_choose_cpu(unsigned int virt_irq) |