perf/x86/intel/lbr: Use setup_clear_cpu_cap() instead of clear_cpu_cap()
authorMaxim Levitsky <mlevitsk@redhat.com>
Mon, 18 Jul 2022 14:11:19 +0000 (17:11 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 3 Nov 2022 14:59:15 +0000 (23:59 +0900)
[ Upstream commit b329f5ddc9ce4b622d9c7aaf5c6df4de52caf91a ]

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.

Fixes: 47125db27e47 ("perf/x86/intel/lbr: Support Architectural LBR")
Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Kan Liang <kan.liang@linux.intel.com>
Link: https://lkml.kernel.org/r/20220718141123.136106-2-mlevitsk@redhat.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/x86/events/intel/lbr.c

index 6737213..b3f9225 100644 (file)
@@ -1847,7 +1847,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);
 }
 
 /**