linux/arch/x86/events/intel
Kan Liang f42be8651a perf/x86/intel/lbr: Use dynamic data structure for task_ctx
The type of task_ctx is hardcoded as struct x86_perf_task_context,
which doesn't apply for Architecture LBR. For example, Architecture LBR
doesn't have the TOS MSR. The number of LBR entries is variable. A new
struct will be introduced for Architecture LBR. Perf has to determine
the type of task_ctx at run time.

The type of task_ctx pointer is changed to 'void *', which will be
determined at run time.

The generic LBR optimization can be shared between Architecture LBR and
model-specific LBR. Both need to access the structure for the generic
LBR optimization. A helper task_context_opt() is introduced to retrieve
the pointer of the structure at run time.

Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/1593780569-62993-7-git-send-email-kan.liang@linux.intel.com
2020-07-08 11:38:52 +02:00
..
bts.c perf/x86: Replace zero-length array with flexible-array 2020-05-19 20:34:16 +02:00
core.c perf/x86/intel/lbr: Add the function pointers for LBR save and restore 2020-07-08 11:38:52 +02:00
cstate.c perf/x86/cstate: Add Jasper Lake CPU support 2020-04-22 21:43:12 +02:00
ds.c perf/x86/intel: Fix inaccurate period in context switch for auto-reload 2020-02-11 13:23:27 +01:00
knc.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lbr.c perf/x86/intel/lbr: Use dynamic data structure for task_ctx 2020-07-08 11:38:52 +02:00
Makefile perf/x86/rapl: Move RAPL support to common x86 code 2020-05-28 07:58:55 +02:00
p4.c perf_event: Add support for LSM and SELinux checks 2019-10-17 21:31:55 +02:00
p6.c x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping 2018-02-15 01:15:52 +01:00
pt.c perf/x86/intel/pt: Drop pointless NULL assignment. 2020-04-30 20:14:36 +02:00
pt.h perf/x86/intel/pt: Prevent redundant WRMSRs 2019-11-13 11:06:18 +01:00
uncore_nhmex.c perf/x86/intel/uncore: Correct fixed counter index check for NHM 2018-05-31 12:36:28 +02:00
uncore_snb.c perf/x86/intel/uncore: Record the size of mapped area 2020-06-15 14:09:50 +02:00
uncore_snbep.c perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping 2020-06-15 14:09:51 +02:00
uncore.c perf/x86/intel/uncore: Wrap the max dies calculation into an accessor 2020-06-15 14:09:51 +02:00
uncore.h perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping 2020-06-15 14:09:51 +02:00