Searched hist:f42be8651a7a9d5cb165e5d176fc0b09621b4f4d (Results 1 – 2 of 2) sorted by relevance
/linux/arch/x86/events/intel/ |
H A D | lbr.c | diff f42be8651a7a9d5cb165e5d176fc0b09621b4f4d Fri Jul 03 14:49:12 CEST 2020 Kan Liang <kan.liang@linux.intel.com> 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
|
/linux/arch/x86/events/ |
H A D | perf_event.h | diff f42be8651a7a9d5cb165e5d176fc0b09621b4f4d Fri Jul 03 14:49:12 CEST 2020 Kan Liang <kan.liang@linux.intel.com> 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
|