summary refs log tree commit diff
path: root/arch/powerpc/platforms/wsp
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2011-05-25 23:34:12 +0000
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-06-20 11:21:32 +1000
commit9ca980dce523760ce04a798470d36fd5aa596b78 (patch)
treebef37cf5113f56a8e77d6bebf2f57a9df9ae8c21 /arch/powerpc/platforms/wsp
parent7ac87abb8166b99584149fcfb2efef5773a078e9 (diff)
downloadlinux-9ca980dce523760ce04a798470d36fd5aa596b78.tar.gz
powerpc: Avoid extra indirect function call in sending IPIs
On many platforms (including pSeries), smp_ops->message_pass is always
smp_muxed_ipi_message_pass.  This changes arch/powerpc/kernel/smp.c so
that if smp_ops->message_pass is NULL, it calls smp_muxed_ipi_message_pass
directly.

This means that a platform doesn't need to set both .message_pass and
.cause_ipi, only one of them.  It is a slight performance improvement
in that it gets rid of an indirect function call at the expense of a
predictable conditional branch.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/platforms/wsp')
-rw-r--r--arch/powerpc/platforms/wsp/smp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/wsp/smp.c b/arch/powerpc/platforms/wsp/smp.c
index 9d20fa9d3710..71bd105f3863 100644
--- a/arch/powerpc/platforms/wsp/smp.c
+++ b/arch/powerpc/platforms/wsp/smp.c
@@ -75,7 +75,7 @@ static int __init smp_a2_probe(void)
 }
 
 static struct smp_ops_t a2_smp_ops = {
-	.message_pass	= smp_muxed_ipi_message_pass,
+	.message_pass	= NULL,	/* Use smp_muxed_ipi_message_pass */
 	.cause_ipi	= doorbell_cause_ipi,
 	.probe		= smp_a2_probe,
 	.kick_cpu	= smp_a2_kick_cpu,