Re: [PATCH] perf/x86/intel: Make cpuc allocations consistent

From: Guenter Roeck
Date: Thu Mar 14 2019 - 17:10:19 EST


Hi,

On Tue, Mar 05, 2019 at 10:23:15PM +0100, Peter Zijlstra (Intel) wrote:
> The cpuc data structure allocation is different between fake and real
> cpuc's; use the same code to init/free both.
>
> Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

With allmodconfig-CONFIG_CPU_SUP_INTEL, this patch results in:

In file included from arch/x86/events/amd/core.c:8:0:
arch/x86/events/amd/../perf_event.h:1036:45: warning: âstruct cpu_hw_eventâ declared inside parameter list will not be visible outside of this definition or declaration
static inline int intel_cpuc_prepare(struct cpu_hw_event *cpuc, int cpu)
^~~~~~~~~~~~
arch/x86/events/amd/../perf_event.h:1041:45: warning: âstruct cpu_hw_eventâ declared inside parameter list will not be visible outside of this definition or declaration
static inline void intel_cpuc_finish(struct cpu_hw_event *cpuc)
^~~~~~~~~~~~

With -Werror, this is fatal, and I think it may be buggy (should it be
cpu_hw_events) ?

The patch has been applied to stable releases. Any idea, anyone, why
this is the case ? It doesn't look like a bug fix to me, and reverting
it from v4.14.106 didn't seem to have a negative impact.

Guenter