Patch "perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[]" has been added to the 5.11-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[]

to the 5.11-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     perf-x86-kvm-fix-broadwell-xeon-stepping-in-isolatio.patch
and it can be found in the queue-5.11 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 320b04a3d7292be2fbfe9865089c9a84261bee92
Author: Jim Mattson <jmattson@xxxxxxxxxx>
Date:   Wed Apr 21 17:18:34 2021 -0700

    perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[]
    
    [ Upstream commit 4b2f1e59229b9da319d358828cdfa4ddbc140769 ]
    
    The only stepping of Broadwell Xeon parts is stepping 1. Fix the
    relevant isolation_ucodes[] entry, which previously enumerated
    stepping 2.
    
    Although the original commit was characterized as an optimization, it
    is also a workaround for a correctness issue.
    
    If a PMI arrives between kvm's call to perf_guest_get_msrs() and the
    subsequent VM-entry, a stale value for the IA32_PEBS_ENABLE MSR may be
    restored at the next VM-exit. This is because, unbeknownst to kvm, PMI
    throttling may clear bits in the IA32_PEBS_ENABLE MSR. CPUs with "PEBS
    isolation" don't suffer from this issue, because perf_guest_get_msrs()
    doesn't report the IA32_PEBS_ENABLE value.
    
    Fixes: 9b545c04abd4f ("perf/x86/kvm: Avoid unnecessary work in guest filtering")
    Signed-off-by: Jim Mattson <jmattson@xxxxxxxxxx>
    Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
    Reviewed-by: Peter Shier <pshier@xxxxxxxxxx>
    Acked-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
    Link: https://lkml.kernel.org/r/20210422001834.1748319-1-jmattson@xxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c
index bfd42e0853ed..6c88f245b33a 100644
--- a/arch/x86/events/intel/core.c
+++ b/arch/x86/events/intel/core.c
@@ -4400,7 +4400,7 @@ static const struct x86_cpu_desc isolation_ucodes[] = {
 	INTEL_CPU_DESC(INTEL_FAM6_BROADWELL_D,		 3, 0x07000009),
 	INTEL_CPU_DESC(INTEL_FAM6_BROADWELL_D,		 4, 0x0f000009),
 	INTEL_CPU_DESC(INTEL_FAM6_BROADWELL_D,		 5, 0x0e000002),
-	INTEL_CPU_DESC(INTEL_FAM6_BROADWELL_X,		 2, 0x0b000014),
+	INTEL_CPU_DESC(INTEL_FAM6_BROADWELL_X,		 1, 0x0b000014),
 	INTEL_CPU_DESC(INTEL_FAM6_SKYLAKE_X,		 3, 0x00000021),
 	INTEL_CPU_DESC(INTEL_FAM6_SKYLAKE_X,		 4, 0x00000000),
 	INTEL_CPU_DESC(INTEL_FAM6_SKYLAKE_X,		 5, 0x00000000),



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux