Messages in this thread | | | Date | Wed, 22 Jun 2022 15:32:42 -0400 | Subject | Re: [PATCH 1/4] perf/x86/intel/lbr: use setup_clear_cpu_cap instead of clear_cpu_cap | From | "Liang, Kan" <> |
| |
On 6/22/2022 2:57 PM, Liang, Kan wrote: > > > On 6/22/2022 10:58 AM, Dave Hansen wrote: >> On 6/22/22 07:48, Maxim Levitsky wrote: >>> clear_cpu_cap(&boot_cpu_data) is very similar to setup_clear_cpu_cap >>> except that the latter also sets a bit in 'cpu_caps_cleared' which >>> later clears the same cap in secondary cpus, which is likely >>> what is meant here. >>> >>> Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com> >> >> Seems like a: >> >> Fixes: 47125db27e47 ("perf/x86/intel/lbr: Support Architectural LBR") >> >> would be in order. >> >> Kan, does this change look right to you? > > For the current implementation, the Arch LBR feature should be either > supported by all the CPUs or disabled on all the CPUs. It cannot be only > enabled for partial CPUs, even in a hybrid platform. > So the current code only check the boot CPU via static_cpu_has(). > > Ideally, Yes, I think it may be better to clear the bit for all CPUs, > which makes the capability consistent among CPUs. >
Reviewed-by: Kan Liang <kan.liang@linux.intel.com>
Thanks, Kan
> Thanks, > Kan >> >>> arch/x86/events/intel/lbr.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/arch/x86/events/intel/lbr.c b/arch/x86/events/intel/lbr.c >>> index 13179f31fe10fa..b08715172309a7 100644 >>> --- a/arch/x86/events/intel/lbr.c >>> +++ b/arch/x86/events/intel/lbr.c >>> @@ -1860,7 +1860,7 @@ void __init intel_pmu_arch_lbr_init(void) >>> return; >>> clear_arch_lbr: >>> - clear_cpu_cap(&boot_cpu_data, X86_FEATURE_ARCH_LBR); >>> + setup_clear_cpu_cap(X86_FEATURE_ARCH_LBR); >>> } >>> /** >>
| |