[PATCH] ARM: mach-virt: fix PMUv3 dependendency

Will Deacon will at kernel.org
Tue Mar 28 08:21:37 PDT 2023


Hi Arnd,

On Tue, Mar 28, 2023 at 04:43:44PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd at arndb.de>
> 
> Selecting a ARM_PMUV3 from a platform option breaks the build
> when CONFIG_ARM_PMU is not already set:
> 
> WARNING: unmet direct dependencies detected for ARM_PMUV3
>   Depends on [n]: PERF_EVENTS [=y] && HW_PERF_EVENTS [=n] && (ARM [=y] && CPU_V7 [=y] || ARM64)
>   Selected by [y]:
>   - ARCH_VIRT [=y] && ARCH_MULTI_V7 [=y] && PERF_EVENTS [=y]
> 
> drivers/perf/arm_pmuv3.c:48:9: error: 'PERF_MAP_ALL_UNSUPPORTED' undeclared here (not in a function)
>    48 |         PERF_MAP_ALL_UNSUPPORTED,
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~
> drivers/perf/arm_pmuv3.c:63:9: error: 'PERF_CACHE_MAP_ALL_UNSUPPORTED' undeclared here (not in a function)
>    63 |         PERF_CACHE_MAP_ALL_UNSUPPORTED,
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> drivers/perf/arm_pmuv3.c:65:10: error: implicit declaration of function 'C' [-Werror=implicit-function-declaration]
>    65 |         [C(L1D)][C(OP_READ)][C(RESULT_ACCESS)]  = ARMV8_PMUV3_PERFCTR_L1D_CACHE,
> 
> Fixes: 3b16f6268e66 ("ARM: mach-virt: Select PMUv3 driver by default")
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> ---
>  arch/arm/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index e8ccacb3653b..700458c7cace 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -397,7 +397,7 @@ config ARCH_VIRT
>  	select ARM_GIC_V3
>  	select ARM_GIC_V3_ITS if PCI
>  	select ARM_PSCI
> -	select ARM_PMUV3 if PERF_EVENTS
> +	select ARM_PMUV3 if PERF_EVENTS && ARM_PMU
>  	select HAVE_ARM_ARCH_TIMER

We're discussing this one over at:

https://lore.kernel.org/r/202303281539.zzI4vpw1-lkp@intel.com

I'm leaning towards dropping the 'select' altogether.

Will



More information about the linux-arm-kernel mailing list