]> err.no Git - linux-2.6/commit
[SPARC64]: Fix new context version SMP handling.
authorDavid S. Miller <davem@sunset.davemloft.net>
Tue, 7 Mar 2006 06:50:44 +0000 (22:50 -0800)
committerDavid S. Miller <davem@sunset.davemloft.net>
Mon, 20 Mar 2006 09:14:21 +0000 (01:14 -0800)
commitee29074d3bd23848905f52c515974e0cd0219faa
treed5306446b2e26d9e45f65467b4f3b3f3b0c8494c
parenta77754b4d0731321db266c6c60ffcd7c62757da5
[SPARC64]: Fix new context version SMP handling.

Don't piggy back the SMP receive signal code to do the
context version change handling.

Instead allocate another fixed PIL number for this
asynchronous cross-call.  We can't use smp_call_function()
because this thing is invoked with interrupts disabled
and a few spinlocks held.

Also, fix smp_call_function_mask() to count "cpus" correctly.
There is no guarentee that the local cpu is in the mask
yet that is exactly what this code was assuming.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/kernel/devices.c
arch/sparc64/kernel/pci_psycho.c
arch/sparc64/kernel/pci_sabre.c
arch/sparc64/kernel/pci_schizo.c
arch/sparc64/kernel/pci_sun4v.c
arch/sparc64/kernel/sbus.c
arch/sparc64/kernel/smp.c
arch/sparc64/kernel/ttable.S
arch/sparc64/mm/ultra.S
include/asm-sparc64/pil.h