Patch "x86/speculation: Mark all Skylake CPUs as vulnerable to GDS" has been added to the 6.5-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

    x86/speculation: Mark all Skylake CPUs as vulnerable to GDS

to the 6.5-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:
     x86-speculation-mark-all-skylake-cpus-as-vulnerable-.patch
and it can be found in the queue-6.5 subdirectory.

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



commit 417a1dd3635d4ebc40a178b270cbb075bbc3c4b8
Author: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
Date:   Tue Aug 29 08:07:25 2023 -0700

    x86/speculation: Mark all Skylake CPUs as vulnerable to GDS
    
    [ Upstream commit c9f4c45c8ec3f07f4f083f9750032a1ec3eab6b2 ]
    
    The Gather Data Sampling (GDS) vulnerability is common to all Skylake
    processors.  However, the "client" Skylakes* are now in this list:
    
            https://www.intel.com/content/www/us/en/support/articles/000022396/processors.html
    
    which means they are no longer included for new vulnerabilities here:
    
            https://www.intel.com/content/www/us/en/developer/topic-technology/software-security-guidance/processors-affected-consolidated-product-cpu-model.html
    
    or in other GDS documentation.  Thus, they were not included in the
    original GDS mitigation patches.
    
    Mark SKYLAKE and SKYLAKE_L as vulnerable to GDS to match all the
    other Skylake CPUs (which include Kaby Lake).  Also group the CPUs
    so that the ones that share the exact same vulnerabilities are next
    to each other.
    
    Last, move SRBDS to the end of each line.  This makes it clear at a
    glance that SKYLAKE_X is unique.  Of the five Skylakes, it is the
    only "server" CPU and has a different implementation from the
    clients of the "special register" hardware, making it immune to SRBDS.
    
    This makes the diff much harder to read, but the resulting table is
    worth it.
    
    I very much appreciate the report from Michael Zhivich about this
    issue.  Despite what level of support a hardware vendor is providing,
    the kernel very much needs an accurate and up-to-date list of
    vulnerable CPUs.  More reports like this are very welcome.
    
    * Client Skylakes are CPUID 406E3/506E3 which is family 6, models
      0x4E and 0x5E, aka INTEL_FAM6_SKYLAKE and INTEL_FAM6_SKYLAKE_L.
    
    Reported-by: Michael Zhivich <mzhivich@xxxxxxxxxx>
    Fixes: 8974eb588283 ("x86/speculation: Add Gather Data Sampling mitigation")
    Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
    Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
    Reviewed-by: Daniel Sneddon <daniel.sneddon@xxxxxxxxxxxxxxx>
    Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index e3a65e9fc750d..00f043a094fcd 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -1265,11 +1265,11 @@ static const struct x86_cpu_id cpu_vuln_blacklist[] __initconst = {
 	VULNBL_INTEL_STEPPINGS(BROADWELL_G,	X86_STEPPING_ANY,		SRBDS),
 	VULNBL_INTEL_STEPPINGS(BROADWELL_X,	X86_STEPPING_ANY,		MMIO),
 	VULNBL_INTEL_STEPPINGS(BROADWELL,	X86_STEPPING_ANY,		SRBDS),
-	VULNBL_INTEL_STEPPINGS(SKYLAKE_L,	X86_STEPPING_ANY,		SRBDS | MMIO | RETBLEED),
 	VULNBL_INTEL_STEPPINGS(SKYLAKE_X,	X86_STEPPING_ANY,		MMIO | RETBLEED | GDS),
-	VULNBL_INTEL_STEPPINGS(SKYLAKE,		X86_STEPPING_ANY,		SRBDS | MMIO | RETBLEED),
-	VULNBL_INTEL_STEPPINGS(KABYLAKE_L,	X86_STEPPING_ANY,		SRBDS | MMIO | RETBLEED | GDS),
-	VULNBL_INTEL_STEPPINGS(KABYLAKE,	X86_STEPPING_ANY,		SRBDS | MMIO | RETBLEED | GDS),
+	VULNBL_INTEL_STEPPINGS(SKYLAKE_L,	X86_STEPPING_ANY,		MMIO | RETBLEED | GDS | SRBDS),
+	VULNBL_INTEL_STEPPINGS(SKYLAKE,		X86_STEPPING_ANY,		MMIO | RETBLEED | GDS | SRBDS),
+	VULNBL_INTEL_STEPPINGS(KABYLAKE_L,	X86_STEPPING_ANY,		MMIO | RETBLEED | GDS | SRBDS),
+	VULNBL_INTEL_STEPPINGS(KABYLAKE,	X86_STEPPING_ANY,		MMIO | RETBLEED | GDS | SRBDS),
 	VULNBL_INTEL_STEPPINGS(CANNONLAKE_L,	X86_STEPPING_ANY,		RETBLEED),
 	VULNBL_INTEL_STEPPINGS(ICELAKE_L,	X86_STEPPING_ANY,		MMIO | MMIO_SBDS | RETBLEED | GDS),
 	VULNBL_INTEL_STEPPINGS(ICELAKE_D,	X86_STEPPING_ANY,		MMIO | GDS),



[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