lkml.org 
[lkml]   [2022]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 1/4] perf/x86/intel/lbr: use setup_clear_cpu_cap instead of clear_cpu_cap
From


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.

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);
>> }
>>
>> /**
>

\
 
 \ /
  Last update: 2022-06-22 21:00    [W:0.076 / U:0.132 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site