Re: [PATCH] perf/x86/p4: Fix "Wunused-but-set-variable" warning

From: Peter Zijlstra
Date: Sat Oct 07 2023 - 16:36:13 EST


On Sat, Oct 07, 2023 at 08:55:19PM +0200, Lucy Mielke wrote:
> This fixes a compiler warning when compiling an allyesconfig with W=1:
> warning: variable ´high´ set but not used [-Wunused-but-set-variable]

What compiler and what .config?

> Signed-off-by: Lucy Mielke <lucymielke@xxxxxxxxxx>
> ---
> arch/x86/events/intel/p4.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/x86/events/intel/p4.c b/arch/x86/events/intel/p4.c
> index 35936188db01..69aaf7c0f340 100644
> --- a/arch/x86/events/intel/p4.c
> +++ b/arch/x86/events/intel/p4.c
> @@ -1366,7 +1366,7 @@ static __initconst const struct x86_pmu p4_pmu = {
>
> __init int p4_pmu_init(void)
> {
> - unsigned int low, high;
> + unsigned int low, __maybe_unused high;
> int i, reg;
>
> /* If we get stripped -- indexing fails */

Right after this we have:

rdmsr(MSR_IA32_MISC_ENABLE, low, high);

which should get high unconditionally used. If there's a problem then
it's probably inside that rdmsr macro.