[PATCH] powerpc/book3s32: Only select PPC_HAVE_PMU on e600

From: Christophe Leroy
Date: Thu Sep 03 2015 - 05:27:13 EST


On PPC832x, perf record/report reports martian addresses

2.62% perf_reseau4 libpthread-2.18.so [.] __libc_send
2.56% perf_reseau4 [kernel.kallsyms] [k] __ip_make_skb
1.62% perf_reseau4 [kernel.kallsyms] [k] __ip_append_data.isra.39
1.55% perf_reseau4 [kernel.kallsyms] [k] ip_finish_output
1.33% perf_reseau4 [unknown] [k] 0x7ffffd94
1.33% perf_reseau4 [unknown] [k] 0x7ffffd95
1.28% perf_reseau4 [unknown] [k] 0x7ffffd97
1.26% perf_reseau4 [unknown] [k] 0x7ffffda3
1.24% perf_reseau4 [unknown] [k] 0x7ffffd98
1.22% perf_reseau4 [unknown] [k] 0x7ffffd92
1.22% perf_reseau4 [unknown] [k] 0x7ffffd9b
[.....]

This is due to function perf_instruction_pointer() reading SPR SIAR
which doesn't exist on e300 core. The perf_instruction_pointer() is
redefined in arch/powerpc/perf/core-book3s.c when CONFIG_PPC_PERF_CTRS
is selected.

This patch moves the selection of CONFIG_PPC_HAVE_PMU in 86xx section
so that CONFIG_PPC_PERF_CTRS won't be selected for other 6xx powerpc

Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxx>
---
arch/powerpc/platforms/86xx/Kconfig | 1 +
arch/powerpc/platforms/Kconfig.cputype | 1 -
2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/platforms/86xx/Kconfig b/arch/powerpc/platforms/86xx/Kconfig
index 1afd1e4..bb24d2a 100644
--- a/arch/powerpc/platforms/86xx/Kconfig
+++ b/arch/powerpc/platforms/86xx/Kconfig
@@ -5,6 +5,7 @@ menuconfig PPC_86xx
select FSL_SOC
select ALTIVEC
select ARCH_WANT_OPTIONAL_GPIOLIB
+ select PPC_HAVE_PMU_SUPPORT
help
The Freescale E600 SoCs have 74xx cores.

diff --git a/arch/powerpc/platforms/Kconfig.cputype b/arch/powerpc/platforms/Kconfig.cputype
index d642cf9..aa63b12 100644
--- a/arch/powerpc/platforms/Kconfig.cputype
+++ b/arch/powerpc/platforms/Kconfig.cputype
@@ -143,7 +143,6 @@ config PPC_BOOK3E
config 6xx
def_bool y
depends on PPC32 && PPC_BOOK3S
- select PPC_HAVE_PMU_SUPPORT

config TUNE_CELL
bool "Optimize for Cell Broadband Engine"
--
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/