5.18.5-rc1 review
Subsystems (3)
Greg Kroah-Hartman
maintainercover 5.18.5-rc1 review
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gz
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.18.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <[email protected]>
Linux 5.18.5-rc1
Josh Poimboeuf <[email protected]>
x86/speculation/mmio: Print SMT warning
Pawan Gupta <[email protected]>
KVM: x86/speculation: Disable Fill buffer clear within guests
Pawan Gupta <[email protected]>
x86/speculation/mmio: Reuse SRBDS mitigation for SBDS
Pawan Gupta <[email protected]>
x86/speculation/srbds: Update SRBDS mitigation selection
Pawan Gupta <[email protected]>
x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data
Pawan Gupta <[email protected]>
x86/speculation/mmio: Enable CPU Fill buffer clearing on idle
Pawan Gupta <[email protected]>
x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations
Pawan Gupta <[email protected]>
x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data
Pawan Gupta <[email protected]>
x86/speculation: Add a common function for MD_CLEAR mitigation update
Pawan Gupta <[email protected]>
x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug
Pawan Gupta <[email protected]>
Documentation: Add documentation for Processor MMIO Stale Data
-------------
Diffstat:
Documentation/ABI/testing/sysfs-devices-system-cpu | 1 + Documentation/admin-guide/hw-vuln/index.rst | 1 + .../hw-vuln/processor_mmio_stale_data.rst | 246 +++++++++++++++++++++ Documentation/admin-guide/kernel-parameters.txt | 36 +++ Makefile | 4 +- arch/x86/include/asm/cpufeatures.h | 1 + arch/x86/include/asm/msr-index.h | 25 +++ arch/x86/include/asm/nospec-branch.h | 2 + arch/x86/kernel/cpu/bugs.c | 235 +++++++++++++++++--- arch/x86/kernel/cpu/common.c | 52 ++++- arch/x86/kvm/vmx/vmx.c | 72 ++++++ arch/x86/kvm/vmx/vmx.h | 2 + arch/x86/kvm/x86.c | 3 + drivers/base/cpu.c | 8 + include/linux/cpu.h | 3 + tools/arch/x86/include/asm/cpufeatures.h | 1 + tools/arch/x86/include/asm/msr-index.h | 25 +++ 17 files changed, 676 insertions(+), 41 deletions(-)
Greg Kroah-Hartman
maintainerPATCH 1/11 Documentation: Add documentation for Processor MMIO Stale Data
From: Pawan Gupta <[email protected]>
commit 4419470191386456e0b8ed4eb06a70b0021798a6 upstream
Add the admin guide for Processor MMIO stale data vulnerabilities.
--- Documentation/admin-guide/hw-vuln/index.rst | 1 Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst | 246 ++++++++++ 2 files changed, 247 insertions(+) create mode 100644 Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst
Documentation/admin-guide/hw-vuln/index.rst +1 -0
@@ -17,3 +17,4 @@ are configurable at compile, boot or run special-register-buffer-data-sampling.rst core-scheduling.rst l1d_flush.rst + processor_mmio_stale_data.rst
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst new file +246 -0
246 lines not on this page · raw message
Re: [PATCH 5.18 01/11] Documentation: Add documentation for Processor MMIO Stale Data
Quoted 12 lines · Greg Kroah-Hartman
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst new file +12
-0+ .. list-table:: + + * - 'Not affected' + - The processor is not vulnerable + * - 'Vulnerable' + - The processor is vulnerable, but no mitigation enabled + * - 'Vulnerable: Clear CPU buffers attempted, no microcode' + - The processor is vulnerable, but microcode is not updated. The + mitigation is enabled on a best effort basis. + * - 'Mitigation: Clear CPU buffers' + - The processor is vulnerable and the CPU buffer clearing mitigation is + enabled.
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst line 242
Quoted 10 lines
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst new file +10
-0+ +If the processor is vulnerable then the following information is appended to +the above information: + + ======================== =========================================== + 'SMT vulnerable' SMT is enabled + 'SMT disabled' SMT is disabled + 'SMT Host state unknown' Kernel runs in a VM, Host SMT state unknown + ======================== =========================================== +
Why is list-table used in sysfs table instead of usual ASCII table in SMT vulnerabilities list above? I think using ASCII table in both cases is enough for the purpose.
Signature · 1 line
An old man doll... just what I always wanted! - Clara
Re: [PATCH 5.18 01/11] Documentation: Add documentation for Processor MMIO Stale Data
Quoted 19 lines · Bagas Sanjaya
Quoted 18 lines · Greg Kroah-Hartman
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst new file +18
-0+ .. list-table:: + + * - 'Not affected' + - The processor is not vulnerable + * - 'Vulnerable' + - The processor is vulnerable, but no mitigation enabled + * - 'Vulnerable: Clear CPU buffers attempted, no microcode' + - The processor is vulnerable, but microcode is not updated. The + mitigation is enabled on a best effort basis. + * - 'Mitigation: Clear CPU buffers' + - The processor is vulnerable and the CPU buffer clearing mitigation is + enabled. + +If the processor is vulnerable then the following information is appended to +the above information: + + ======================== =========================================== + 'SMT vulnerable' SMT is enabled
Quoted 8 lines
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst line 242
Quoted 4 lines
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst new file +4
-0+ 'SMT disabled' SMT is disabled + 'SMT Host state unknown' Kernel runs in a VM, Host SMT state unknown + ======================== =========================================== +Why is list-table used in sysfs table instead of usual ASCII table in SMT vulnerabilities list above? I think using ASCII table in both cases is enough for the purpose.
Maybe you are right (and I am no expert in this), but quite a few documents use list-table for sysfs status:
https://www.kernel.org/doc/Documentation/admin-guide/hw-vuln/mds.rst
https://www.kernel.org/doc/Documentation/admin-guide/hw-vuln/spectre.rst
https://www.kernel.org/doc/Documentation/admin-guide/hw-vuln/tsx_async_abort.rst
Jonathan Corbet
maintainerRe: [PATCH 5.18 01/11] Documentation: Add documentation for Processor MMIO Stale Data
Quoted 29 lines · Pawan Gupta
Quoted 19 lines · Bagas Sanjaya
Quoted 18 lines · Greg Kroah-Hartman
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst new file +18
-0+ .. list-table:: + + * - 'Not affected' + - The processor is not vulnerable + * - 'Vulnerable' + - The processor is vulnerable, but no mitigation enabled + * - 'Vulnerable: Clear CPU buffers attempted, no microcode' + - The processor is vulnerable, but microcode is not updated. The + mitigation is enabled on a best effort basis. + * - 'Mitigation: Clear CPU buffers' + - The processor is vulnerable and the CPU buffer clearing mitigation is + enabled. + +If the processor is vulnerable then the following information is appended to +the above information: + + ======================== =========================================== + 'SMT vulnerable' SMT is enabledQuoted 8 lines
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst line 242
Quoted 4 lines
Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst new file +4
-0+ 'SMT disabled' SMT is disabled + 'SMT Host state unknown' Kernel runs in a VM, Host SMT state unknown + ======================== =========================================== +Why is list-table used in sysfs table instead of usual ASCII table in SMT vulnerabilities list above? I think using ASCII table in both cases is enough for the purpose.
Quoted 6 lines
Maybe you are right (and I am no expert in this), but quite a few documents use list-table for sysfs status:
https://www.kernel.org/doc/Documentation/admin-guide/hw-vuln/mds.rst
https://www.kernel.org/doc/Documentation/admin-guide/hw-vuln/spectre.rst
https://www.kernel.org/doc/Documentation/admin-guide/hw-vuln/tsx_async_abort.rst
List-table should really be avoided whenever possible; it makes reading the plain-text files difficult at best. I'd like to see the existing uses taken out over time.
This isn't really something to be addressed in the stable updates, though.
jon
Greg Kroah-Hartman
maintainerPATCH 2/11 x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit 51802186158c74a0304f51ab963e7c2b3a2b046f upstream
Processor MMIO Stale Data is a class of vulnerabilities that may expose data after an MMIO operation. For more details please refer to Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst
Add the Processor MMIO Stale Data bug enumeration. A microcode update adds new bits to the MSR IA32_ARCH_CAPABILITIES, define them.
--- arch/x86/include/asm/cpufeatures.h | 1 arch/x86/include/asm/msr-index.h | 19 +++++++++++++ arch/x86/kernel/cpu/common.c | 43 +++++++++++++++++++++++++++++-- tools/arch/x86/include/asm/cpufeatures.h | 1 tools/arch/x86/include/asm/msr-index.h | 19 +++++++++++++ 5 files changed, 81 insertions(+), 2 deletions(-)
arch/x86/include/asm/cpufeatures.h +1 -0
@@ -443,5 +443,6 @@#define X86_BUG_TAA X86_BUG(22)/* CPU is affected by TSX Async Abort(TAA) */ #define X86_BUG_ITLB_MULTIHIT X86_BUG(23)/* CPU may incur MCE during certain page attribute changes */ #define X86_BUG_SRBDS X86_BUG(24)/* CPU may leak RNG bits if not mitigated */ +#define X86_BUG_MMIO_STALE_DATA X86_BUG(25)/* CPU is affected by Processor MMIO Stale Data vulnerabilities */ #endif /* _ASM_X86_CPUFEATURES_H */
arch/x86/include/asm/msr-index.h +19 -0
@@ -114,6 +114,25 @@* Not susceptible to * TSX Async Abort (TAA) vulnerabilities. */ +#define ARCH_CAP_SBDR_SSDP_NO BIT(13)/* +* Not susceptible to SBDR and SSDP +* variants of Processor MMIO stale data +* vulnerabilities. +*/ +#define ARCH_CAP_FBSDP_NO BIT(14)/* +* Not susceptible to FBSDP variant of +* Processor MMIO stale data +* vulnerabilities. +*/ +#define ARCH_CAP_PSDP_NO BIT(15)/* +* Not susceptible to PSDP variant of +* Processor MMIO stale data +* vulnerabilities. +*/ +#define ARCH_CAP_FB_CLEAR BIT(17)/* +* VERW clears CPU fill buffer +* even on MDS_NO CPUs. +*/ #define MSR_IA32_FLUSH_CMD 0x0000010b#define L1D_FLUSH BIT(0)/*
arch/x86/kernel/cpu/common.c +41 -2
71 lines not on this page · raw message
tools/arch/x86/include/asm/cpufeatures.h +1 -0
@@ -443,5 +443,6 @@#define X86_BUG_TAA X86_BUG(22)/* CPU is affected by TSX Async Abort(TAA) */ #define X86_BUG_ITLB_MULTIHIT X86_BUG(23)/* CPU may incur MCE during certain page attribute changes */ #define X86_BUG_SRBDS X86_BUG(24)/* CPU may leak RNG bits if not mitigated */ +#define X86_BUG_MMIO_STALE_DATA X86_BUG(25)/* CPU is affected by Processor MMIO Stale Data vulnerabilities */ #endif /* _ASM_X86_CPUFEATURES_H */
tools/arch/x86/include/asm/msr-index.h +19 -0
@@ -114,6 +114,25 @@* Not susceptible to * TSX Async Abort (TAA) vulnerabilities. */ +#define ARCH_CAP_SBDR_SSDP_NO BIT(13)/* +* Not susceptible to SBDR and SSDP +* variants of Processor MMIO stale data +* vulnerabilities. +*/ +#define ARCH_CAP_FBSDP_NO BIT(14)/* +* Not susceptible to FBSDP variant of +* Processor MMIO stale data +* vulnerabilities. +*/ +#define ARCH_CAP_PSDP_NO BIT(15)/* +* Not susceptible to PSDP variant of +* Processor MMIO stale data +* vulnerabilities. +*/ +#define ARCH_CAP_FB_CLEAR BIT(17)/* +* VERW clears CPU fill buffer +* even on MDS_NO CPUs. +*/ #define MSR_IA32_FLUSH_CMD 0x0000010b#define L1D_FLUSH BIT(0)/*
Greg Kroah-Hartman
maintainerPATCH 3/11 x86/speculation: Add a common function for MD_CLEAR mitigation update
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit f52ea6c26953fed339aa4eae717ee5c2133c7ff2 upstream
Processor MMIO Stale Data mitigation uses similar mitigation as MDS and TAA. In preparation for adding its mitigation, add a common function to update all mitigations that depend on MD_CLEAR.
[ bp: Add a newline in md_clear_update_mitigation() to separate
statements better. ]
--- arch/x86/kernel/cpu/bugs.c | 59 +++++++++++++++++++++++++-------------------- 1 file changed, 33 insertions(+), 26 deletions(-)
arch/x86/kernel/cpu/bugs.c +33 -26
@@ -41,7 +41,7 @@ static void __init spectre_v2_select_mitstatic void __init ssb_select_mitigation (void );static void __init l1tf_select_mitigation (void );static void __init mds_select_mitigation (void ); -static void __init mds_print_mitigation (void ); +static void __init md_clear_update_mitigation (void );static void __init taa_select_mitigation (void );static void __init srbds_select_mitigation (void );static void __init l1d_flush_select_mitigation (void );
@@ -123,10 +123,10 @@ void __init check_bugs(void)l1d_flush_select_mitigation ();/* -* As MDS and TAA mitigations are inter-related, print MDS -* mitigation until after TAA mitigation selection is done. +* As MDS and TAA mitigations are inter-related, update and print their +* mitigation after TAA mitigation selection is done. */ -mds_print_mitigation (); +md_clear_update_mitigation ();arch_smt_update ();
@@ -267,14 +267,6 @@ static void __init mds_select_mitigation } } -static void __init mds_print_mitigation (void ) -{ -if (!boot_cpu_has_bug (X86_BUG_MDS ) ||cpu_mitigations_off ()) -return ; - -pr_info ("%s\n" , mds_strings[mds_mitigation]); -} -static int __init mds_cmdline (char *str) {if (!boot_cpu_has_bug (X86_BUG_MDS ))
@@ -329,7 +321,7 @@ static void __init taa_select_mitigation/* TSX previously disabled by tsx=off */ if (!boot_cpu_has (X86_FEATURE_RTM )) { taa_mitigation =TAA_MITIGATION_TSX_DISABLED ; - goto out; +return ; }if (cpu_mitigations_off ()) {
@@ -343,7 +335,7 @@ static void __init taa_select_mitigation*/ if (taa_mitigation ==TAA_MITIGATION_OFF && mds_mitigation ==MDS_MITIGATION_OFF ) - goto out; +return ;if (boot_cpu_has (X86_FEATURE_MD_CLEAR )) taa_mitigation =TAA_MITIGATION_VERW ;
@@ -375,18 +367,6 @@ static void __init taa_select_mitigationif (taa_nosmt ||cpu_mitigations_auto_nosmt ())cpu_smt_disable (false); - -/* -* Update MDS mitigation, if necessary, as the mds_user_clear is -* now enabled for TAA mitigation. -*/ -if (mds_mitigation ==MDS_MITIGATION_OFF && -boot_cpu_has_bug (X86_BUG_MDS )) { - mds_mitigation =MDS_MITIGATION_FULL ; -mds_select_mitigation (); - } -out: -pr_info ("%s\n" , taa_strings[taa_mitigation]); }static int __init tsx_async_abort_parse_cmdline (char *str)
@@ -411,6 +391,33 @@ static int __init tsx_async_abort_parse_early_param ("tsx_async_abort" , tsx_async_abort_parse_cmdline);#undef pr_fmt +#define pr_fmt (fmt) "" fmt + +static void __init md_clear_update_mitigation (void ) +{ +if (cpu_mitigations_off ()) +return ; + +if (!static_key_enabled (&mds_user_clear)) + goto out; + +/* +* mds_user_clear is now enabled. Update MDS mitigation, if +* necessary. +*/ +if (mds_mitigation ==MDS_MITIGATION_OFF && +boot_cpu_has_bug (X86_BUG_MDS )) { + mds_mitigation =MDS_MITIGATION_FULL ; +mds_select_mitigation (); + } +out: +if (boot_cpu_has_bug (X86_BUG_MDS )) +pr_info ("MDS: %s\n" , mds_strings[mds_mitigation]); +if (boot_cpu_has_bug (X86_BUG_TAA )) +pr_info ("TAA: %s\n" , taa_strings[taa_mitigation]); +} + +#undef pr_fmt#define pr_fmt (fmt) "SRBDS: " fmtenum srbds_mitigations {
Greg Kroah-Hartman
maintainerPATCH 4/11 x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit 8cb861e9e3c9a55099ad3d08e1a3b653d29c33ca upstream
Processor MMIO Stale Data is a class of vulnerabilities that may expose data after an MMIO operation. For details please refer to Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst.
These vulnerabilities are broadly categorized as:
Device Register Partial Write (DRPW):
Some endpoint MMIO registers incorrectly handle writes that are smaller than the register size. Instead of aborting the write or only copying the correct subset of bytes (for example, 2 bytes for a 2-byte write), more bytes than specified by the write transaction may be written to the register. On some processors, this may expose stale data from the fill buffers of the core that created the write transaction.
Shared Buffers Data Sampling (SBDS):
After propagators may have moved data around the uncore and copied stale data into client core fill buffers, processors affected by MFBDS can leak data from the fill buffer.
Shared Buffers Data Read (SBDR):
It is similar to Shared Buffer Data Sampling (SBDS) except that the data is directly read into the architectural software-visible state.
An attacker can use these vulnerabilities to extract data from CPU fill buffers using MDS and TAA methods. Mitigate it by clearing the CPU fill buffers using the VERW instruction before returning to a user or a guest.
On CPUs not affected by MDS and TAA, user application cannot sample data from CPU fill buffers using MDS or TAA. A guest with MMIO access can still use DRPW or SBDR to extract data architecturally. Mitigate it with VERW instruction to clear fill buffers before VMENTER for MMIO capable guests.
Add a kernel parameter mmio_stale_data={off|full|full,nosmt} to control the mitigation.
--- Documentation/admin-guide/kernel-parameters.txt | 36 +++++++ arch/x86/include/asm/nospec-branch.h | 2 arch/x86/kernel/cpu/bugs.c | 111 +++++++++++++++++++++++- arch/x86/kvm/vmx/vmx.c | 3 4 files changed, 148 insertions(+), 4 deletions(-)
Documentation/admin-guide/kernel-parameters.txt +36 -0
@@ -3105,6 +3105,7 @@ kvm.nx_huge_pages=off [X86] no_entry_flush [PPC] no_uaccess_flush [PPC] + mmio_stale_data=off [X86] Exceptions: This does not have any effect on
@@ -3126,6 +3127,7 @@ Equivalent to: l1tf=flush,nosmt [X86] mds=full,nosmt [X86] tsx_async_abort=full,nosmt [X86] + mmio_stale_data=full,nosmt [X86] mminit_loglevel= [KNL] When CONFIG_DEBUG_MEMORY_INIT is set, this
@@ -3135,6 +3137,40 @@ log everything. Information is printed at KERN_DEBUG so loglevel=8 may also need to be specified. + mmio_stale_data= + [X86,INTEL] Control mitigation for the Processor + MMIO Stale Data vulnerabilities. + + Processor MMIO Stale Data is a class of + vulnerabilities that may expose data after an MMIO + operation. Exposed data could originate or end in + the same CPU buffers as affected by MDS and TAA. + Therefore, similar to MDS and TAA, the mitigation + is to clear the affected CPU buffers. + + This parameter controls the mitigation. The + options are: + + full - Enable mitigation on vulnerable CPUs + + full,nosmt - Enable mitigation and disable SMT on + vulnerable CPUs. + + off - Unconditionally disable mitigation + + On MDS or TAA affected machines, + mmio_stale_data=off can be prevented by an active + MDS or TAA mitigation as these vulnerabilities are + mitigated with the same mechanism so in order to + disable this mitigation, you need to specify + mds=off and tsx_async_abort=off too. + + Not specifying this option is equivalent to + mmio_stale_data=full. + + For details see: + Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst + module.sig_enforce [KNL] When CONFIG_MODULE_SIG is set, this means that modules without (valid) signatures will fail to load.
arch/x86/include/asm/nospec-branch.h +2 -0
@@ -269,6 +269,8 @@ DECLARE_STATIC_KEY_FALSE(mds_idle_clear)DECLARE_STATIC_KEY_FALSE (switch_mm_cond_l1d_flush); +DECLARE_STATIC_KEY_FALSE (mmio_stale_data_clear); +#include <asm/segment.h> /**
arch/x86/kernel/cpu/bugs.c +107 -4
156 lines not on this page · raw message
arch/x86/kvm/vmx/vmx.c +3 -0
@@ -6773,6 +6773,9 @@ static noinstr void vmx_vcpu_enter_exit(vmx_l1d_flush (vcpu); else if (static_branch_unlikely(&mds_user_clear)) mds_clear_cpu_buffers(); + else if (static_branch_unlikely(&mmio_stale_data_clear) && + kvm_arch_has_assigned_device(vcpu->kvm)) + mds_clear_cpu_buffers();if (vcpu->arch.cr2 !=native_read_cr2 ())native_write_cr2 (vcpu->arch.cr2);
Greg Kroah-Hartman
maintainerPATCH 5/11 x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit e5925fb867290ee924fcf2fe3ca887b792714366 upstream
MDS, TAA and Processor MMIO Stale Data mitigations rely on clearing CPU buffers. Moreover, status of these mitigations affects each other. During boot, it is important to maintain the order in which these mitigations are selected. This is especially true for md_clear_update_mitigation() that needs to be called after MDS, TAA and Processor MMIO Stale Data mitigation selection is done.
Introduce md_clear_select_mitigation(), and select all these mitigations from there. This reflects relationships between these mitigations and ensures proper ordering.
--- arch/x86/kernel/cpu/bugs.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-)
arch/x86/kernel/cpu/bugs.c +16 -10
@@ -42,6 +42,7 @@ static void __init ssb_select_mitigationstatic void __init l1tf_select_mitigation (void );static void __init mds_select_mitigation (void );static void __init md_clear_update_mitigation (void ); +static void __init md_clear_select_mitigation (void );static void __init taa_select_mitigation (void );static void __init mmio_select_mitigation (void );static void __init srbds_select_mitigation (void );
@@ -122,19 +123,10 @@ void __init check_bugs(void)spectre_v2_select_mitigation ();ssb_select_mitigation ();l1tf_select_mitigation (); -mds_select_mitigation (); -taa_select_mitigation (); -mmio_select_mitigation (); +md_clear_select_mitigation ();srbds_select_mitigation ();l1d_flush_select_mitigation (); -/* -* As MDS, TAA and MMIO Stale Data mitigations are inter-related, update -* and print their mitigation after MDS, TAA and MMIO Stale Data -* mitigation selection is done. -*/ -md_clear_update_mitigation (); -arch_smt_update ();#ifdef CONFIG_X86_32
@@ -520,6 +512,20 @@ out:pr_info ("MMIO Stale Data: %s\n" , mmio_strings[mmio_mitigation]); } +static void __init md_clear_select_mitigation (void ) +{ +mds_select_mitigation (); +taa_select_mitigation (); +mmio_select_mitigation (); + +/* +* As MDS, TAA and MMIO Stale Data mitigations are inter-related, update +* and print their mitigation after MDS, TAA and MMIO Stale Data +* mitigation selection is done. +*/ +md_clear_update_mitigation (); +} +#undef pr_fmt#define pr_fmt (fmt) "SRBDS: " fmt
Greg Kroah-Hartman
maintainerPATCH 6/11 x86/speculation/mmio: Enable CPU Fill buffer clearing on idle
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit 99a83db5a605137424e1efe29dc0573d6a5b6316 upstream
When the CPU is affected by Processor MMIO Stale Data vulnerabilities, Fill Buffer Stale Data Propagator (FBSDP) can propagate stale data out of Fill buffer to uncore buffer when CPU goes idle. Stale data can then be exploited with other variants using MMIO operations.
Mitigate it by clearing the Fill buffer before entering idle state.
--- arch/x86/kernel/cpu/bugs.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-)
arch/x86/kernel/cpu/bugs.c +14 -2
@@ -434,6 +434,14 @@ static void __init mmio_select_mitigatiostatic_branch_enable (&mmio_stale_data_clear);/* +* If Processor-MMIO-Stale-Data bug is present and Fill Buffer data can +* be propagated to uncore buffers, clearing the Fill buffers on idle +* is required irrespective of SMT state. +*/ +if (!(ia32_cap &ARCH_CAP_FBSDP_NO )) +static_branch_enable (&mds_idle_clear); + +/* * Check if the system has the right microcode. * * CPU Fill buffer clear mitigation is enumerated by either an explicit
@@ -1225,6 +1233,8 @@ static void update_indir_branch_cond(voi/* Update the static key controlling the MDS CPU buffer clear in idle */ static void update_mds_branch_idle (void ) { +u64 ia32_cap =x86_read_arch_cap_msr (); +/* * Enable the idle clearing if SMT is active on CPUs which are * affected only by MSBDS and not any other MDS variant.
@@ -1236,10 +1246,12 @@ static void update_mds_branch_idle(void)if (!boot_cpu_has_bug (X86_BUG_MSBDS_ONLY ))return ; -if (sched_smt_active ()) +if (sched_smt_active ()) {static_branch_enable (&mds_idle_clear); -else + }else if (mmio_mitigation ==MMIO_MITIGATION_OFF || + (ia32_cap &ARCH_CAP_FBSDP_NO )) {static_branch_disable (&mds_idle_clear); + } }#define MDS_MSG_SMT "MDS CPU bug present and SMT on, data leak possible. See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/mds.html for more details.\n"
Greg Kroah-Hartman
maintainerPATCH 7/11 x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit 8d50cdf8b8341770bc6367bce40c0c1bb0e1d5b3 upstream
Add the sysfs reporting file for Processor MMIO Stale Data vulnerability. It exposes the vulnerability and mitigation state similar to the existing files for the other hardware vulnerabilities.
--- Documentation/ABI/testing/sysfs-devices-system-cpu | 1 arch/x86/kernel/cpu/bugs.c | 22 +++++++++++++++++++++ drivers/base/cpu.c | 8 +++++++ include/linux/cpu.h | 3 ++ 4 files changed, 34 insertions(+)
Documentation/ABI/testing/sysfs-devices-system-cpu +1 -0
@@ -526,6 +526,7 @@ What: /sys/devices/system/cpu/vulnerabi /sys/devices/system/cpu/vulnerabilities/srbds /sys/devices/system/cpu/vulnerabilities/tsx_async_abort /sys/devices/system/cpu/vulnerabilities/itlb_multihit + /sys/devices/system/cpu/vulnerabilities/mmio_stale_data Date: January 2018 Contact: Linux kernel mailing list <[email protected]> Description: Information about CPU vulnerabilities
arch/x86/kernel/cpu/bugs.c +22 -0
@@ -1902,6 +1902,20 @@ static ssize_t tsx_async_abort_show_stat sched_smt_active() ? "vulnerable" : "disabled"); } +static ssize_t mmio_stale_data_show_state (char *buf) +{ +if (mmio_mitigation ==MMIO_MITIGATION_OFF ) +return sysfs_emit (buf,"%s\n" , mmio_strings[mmio_mitigation]); + +if (boot_cpu_has (X86_FEATURE_HYPERVISOR )) { +return sysfs_emit (buf,"%s; SMT Host state unknown\n" , + mmio_strings[mmio_mitigation]); + } + +return sysfs_emit (buf,"%s; SMT %s\n" , mmio_strings[mmio_mitigation], +sched_smt_active () ?"vulnerable" :"disabled" ); +} +static char *stibp_state (void ) {if (spectre_v2_in_eibrs_mode (spectre_v2_enabled))
@@ -2002,6 +2016,9 @@ static ssize_t cpu_show_common(struct decase X86_BUG_SRBDS :return srbds_show_state (buf); +case X86_BUG_MMIO_STALE_DATA : +return mmio_stale_data_show_state (buf); +default :break ; }
@@ -2053,4 +2070,9 @@ ssize_t cpu_show_srbds(struct device *de {return cpu_show_common (dev, attr, buf,X86_BUG_SRBDS ); } + +ssize_t cpu_show_mmio_stale_data (struct device *dev,struct device_attribute *attr,char *buf) +{ +return cpu_show_common (dev, attr, buf,X86_BUG_MMIO_STALE_DATA ); +}#endif
drivers/base/cpu.c +8 -0
@@ -564,6 +564,12 @@ ssize_t __weak cpu_show_srbds(struct devreturn sysfs_emit (buf,"Not affected\n" ); } +ssize_t __weak cpu_show_mmio_stale_data (struct device *dev, +struct device_attribute *attr,char *buf) +{ +return sysfs_emit (buf,"Not affected\n" ); +} + static DEVICE_ATTR(meltdown, 0444, cpu_show_meltdown, NULL); static DEVICE_ATTR(spectre_v1, 0444, cpu_show_spectre_v1, NULL); static DEVICE_ATTR(spectre_v2, 0444, cpu_show_spectre_v2, NULL);
@@ -573,6 +579,7 @@ static DEVICE_ATTR(mds, 0444, cpu_show_m static DEVICE_ATTR(tsx_async_abort, 0444, cpu_show_tsx_async_abort, NULL); static DEVICE_ATTR(itlb_multihit, 0444, cpu_show_itlb_multihit, NULL); static DEVICE_ATTR(srbds, 0444, cpu_show_srbds, NULL); +static DEVICE_ATTR(mmio_stale_data, 0444, cpu_show_mmio_stale_data, NULL);static struct attribute *cpu_root_vulnerabilities_attrs[] = { &dev_attr_meltdown.attr,
@@ -584,6 +591,7 @@ static struct attribute *cpu_root_vulner &dev_attr_tsx_async_abort.attr, &dev_attr_itlb_multihit.attr, &dev_attr_srbds.attr, + &dev_attr_mmio_stale_data.attr, NULL };
include/linux/cpu.h +3 -0
@@ -65,6 +65,9 @@ extern ssize_t cpu_show_tsx_async_abort(extern ssize_t cpu_show_itlb_multihit (struct device *dev,struct device_attribute *attr,char *buf);extern ssize_t cpu_show_srbds (struct device *dev,struct device_attribute *attr,char *buf); +extern ssize_t cpu_show_mmio_stale_data (struct device *dev, +struct device_attribute *attr, +char *buf); extern __printf(4, 5) struct device *cpu_device_create(struct device *parent, void *drvdata,
Greg Kroah-Hartman
maintainerPATCH 8/11 x86/speculation/srbds: Update SRBDS mitigation selection
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit 22cac9c677c95f3ac5c9244f8ca0afdc7c8afb19 upstream
Currently, Linux disables SRBDS mitigation on CPUs not affected by MDS and have the TSX feature disabled. On such CPUs, secrets cannot be extracted from CPU fill buffers using MDS or TAA. Without SRBDS mitigation, Processor MMIO Stale Data vulnerabilities can be used to extract RDRAND, RDSEED, and EGETKEY data.
Do not disable SRBDS mitigation by default when CPU is also affected by Processor MMIO Stale Data vulnerabilities.
--- arch/x86/kernel/cpu/bugs.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
arch/x86/kernel/cpu/bugs.c +5 -3
@@ -595,11 +595,13 @@ static void __init srbds_select_mitigatireturn ;/* -* Check to see if this is one of the MDS_NO systems supporting -* TSX that are only exposed to SRBDS when TSX is enabled. +* Check to see if this is one of the MDS_NO systems supporting TSX that +* are only exposed to SRBDS when TSX is enabled or when CPU is affected +* by Processor MMIO Stale Data vulnerability. */ ia32_cap =x86_read_arch_cap_msr (); -if ((ia32_cap &ARCH_CAP_MDS_NO ) && !boot_cpu_has (X86_FEATURE_RTM )) +if ((ia32_cap &ARCH_CAP_MDS_NO ) && !boot_cpu_has (X86_FEATURE_RTM ) && + !boot_cpu_has_bug (X86_BUG_MMIO_STALE_DATA )) srbds_mitigation =SRBDS_MITIGATION_TSX_OFF ;else if (boot_cpu_has (X86_FEATURE_HYPERVISOR )) srbds_mitigation =SRBDS_MITIGATION_HYPERVISOR ;
Greg Kroah-Hartman
maintainerPATCH 9/11 x86/speculation/mmio: Reuse SRBDS mitigation for SBDS
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit a992b8a4682f119ae035a01b40d4d0665c4a2875 upstream
The Shared Buffers Data Sampling (SBDS) variant of Processor MMIO Stale Data vulnerabilities may expose RDRAND, RDSEED and SGX EGETKEY data. Mitigation for this is added by a microcode update.
As some of the implications of SBDS are similar to SRBDS, SRBDS mitigation infrastructure can be leveraged by SBDS. Set X86_BUG_SRBDS and use SRBDS mitigation.
Mitigation is enabled by default; use srbds=off to opt-out. Mitigation status can be checked from below file:
/sys/devices/system/cpu/vulnerabilities/srbds
--- arch/x86/kernel/cpu/common.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-)
arch/x86/kernel/cpu/common.c +14 -7
@@ -1239,6 +1239,8 @@ static const __initconst struct x86_cpu_#define SRBDS BIT(0)/* CPU is affected by X86_BUG_MMIO_STALE_DATA */ #define MMIO BIT(1) +/* CPU is affected by Shared Buffers Data Sampling (SBDS), a variant of X86_BUG_MMIO_STALE_DATA */ +#define MMIO_SBDS BIT(2)static const struct x86_cpu_id cpu_vuln_blacklist[]__initconst = {VULNBL_INTEL_STEPPINGS (IVYBRIDGE ,X86_STEPPING_ANY ,SRBDS ),
@@ -1260,16 +1262,17 @@ static const struct x86_cpu_id cpu_vuln_VULNBL_INTEL_STEPPINGS (KABYLAKE_L ,X86_STEPPINGS (0x0 ,0x8 ),SRBDS ),VULNBL_INTEL_STEPPINGS (KABYLAKE ,X86_STEPPINGS (0x9 ,0xD ),SRBDS |MMIO ),VULNBL_INTEL_STEPPINGS (KABYLAKE ,X86_STEPPINGS (0x0 ,0x8 ),SRBDS ), -VULNBL_INTEL_STEPPINGS (ICELAKE_L ,X86_STEPPINGS (0x5 ,0x5 ),MMIO ), +VULNBL_INTEL_STEPPINGS (ICELAKE_L ,X86_STEPPINGS (0x5 ,0x5 ),MMIO |MMIO_SBDS ),VULNBL_INTEL_STEPPINGS (ICELAKE_D ,X86_STEPPINGS (0x1 ,0x1 ),MMIO ),VULNBL_INTEL_STEPPINGS (ICELAKE_X ,X86_STEPPINGS (0x4 ,0x6 ),MMIO ), -VULNBL_INTEL_STEPPINGS (COMETLAKE ,BIT (2 ) |BIT (3 ) |BIT (5 ),MMIO ), -VULNBL_INTEL_STEPPINGS (COMETLAKE_L ,X86_STEPPINGS (0x0 ,0x1 ),MMIO ), -VULNBL_INTEL_STEPPINGS (LAKEFIELD ,X86_STEPPINGS (0x1 ,0x1 ),MMIO ), +VULNBL_INTEL_STEPPINGS (COMETLAKE ,BIT (2 ) |BIT (3 ) |BIT (5 ),MMIO |MMIO_SBDS ), +VULNBL_INTEL_STEPPINGS (COMETLAKE_L ,X86_STEPPINGS (0x1 ,0x1 ),MMIO |MMIO_SBDS ), +VULNBL_INTEL_STEPPINGS (COMETLAKE_L ,X86_STEPPINGS (0x0 ,0x0 ),MMIO ), +VULNBL_INTEL_STEPPINGS (LAKEFIELD ,X86_STEPPINGS (0x1 ,0x1 ),MMIO |MMIO_SBDS ),VULNBL_INTEL_STEPPINGS (ROCKETLAKE ,X86_STEPPINGS (0x1 ,0x1 ),MMIO ), -VULNBL_INTEL_STEPPINGS (ATOM_TREMONT ,X86_STEPPINGS (0x1 ,0x1 ),MMIO ), +VULNBL_INTEL_STEPPINGS (ATOM_TREMONT ,X86_STEPPINGS (0x1 ,0x1 ),MMIO |MMIO_SBDS ),VULNBL_INTEL_STEPPINGS (ATOM_TREMONT_D ,X86_STEPPING_ANY ,MMIO ), - VULNBL_INTEL_STEPPINGS(ATOM_TREMONT_L, X86_STEPPINGS(0x0, 0x0), MMIO), + VULNBL_INTEL_STEPPINGS(ATOM_TREMONT_L, X86_STEPPINGS(0x0, 0x0), MMIO | MMIO_SBDS), {} };
@@ -1350,10 +1353,14 @@ static void __init cpu_set_bug_bits(stru/* * SRBDS affects CPUs which support RDRAND or RDSEED and are listed * in the vulnerability blacklist. +* +* Some of the implications and mitigation of Shared Buffers Data +* Sampling (SBDS) are similar to SRBDS. Give SBDS same treatment as +* SRBDS. */ if ((cpu_has (c,X86_FEATURE_RDRAND ) ||cpu_has (c,X86_FEATURE_RDSEED )) && -cpu_matches (cpu_vuln_blacklist,SRBDS )) +cpu_matches (cpu_vuln_blacklist,SRBDS |MMIO_SBDS ))setup_force_cpu_bug (X86_BUG_SRBDS );/*
Greg Kroah-Hartman
maintainerPATCH 10/11 KVM: x86/speculation: Disable Fill buffer clear within guests
In reply to Greg Kroah-HartmanFrom: Pawan Gupta <[email protected]>
commit 027bbb884be006b05d9c577d6401686053aa789e upstream
The enumeration of MD_CLEAR in CPUID(EAX=7,ECX=0).EDX{bit 10} is not an accurate indicator on all CPUs of whether the VERW instruction will overwrite fill buffers. FB_CLEAR enumeration in IA32_ARCH_CAPABILITIES{bit 17} covers the case of CPUs that are not vulnerable to MDS/TAA, indicating that microcode does overwrite fill buffers.
Guests running in VMM environments may not be aware of all the capabilities/vulnerabilities of the host CPU. Specifically, a guest may apply MDS/TAA mitigations when a virtual CPU is enumerated as vulnerable to MDS/TAA even when the physical CPU is not. On CPUs that enumerate FB_CLEAR_CTRL the VMM may set FB_CLEAR_DIS to skip overwriting of fill buffers by the VERW instruction. This is done by setting FB_CLEAR_DIS during VMENTER and resetting on VMEXIT. For guests that enumerate FB_CLEAR (explicitly asking for fill buffer clear capability) the VMM will not use FB_CLEAR_DIS.
Irrespective of guest state, host overwrites CPU buffers before VMENTER to protect itself from an MMIO capable guest, as part of mitigation for MMIO Stale Data vulnerabilities.
--- arch/x86/include/asm/msr-index.h | 6 ++ arch/x86/kvm/vmx/vmx.c | 69 +++++++++++++++++++++++++++++++++ arch/x86/kvm/vmx/vmx.h | 2 arch/x86/kvm/x86.c | 3 + tools/arch/x86/include/asm/msr-index.h | 6 ++ 5 files changed, 86 insertions(+)
arch/x86/include/asm/msr-index.h +6 -0
@@ -133,6 +133,11 @@* VERW clears CPU fill buffer * even on MDS_NO CPUs. */ +#define ARCH_CAP_FB_CLEAR_CTRL BIT(18)/* +* MSR_IA32_MCU_OPT_CTRL[FB_CLEAR_DIS] +* bit available to control VERW +* behavior. +*/ #define MSR_IA32_FLUSH_CMD 0x0000010b#define L1D_FLUSH BIT(0)/*
@@ -150,6 +155,7 @@#define MSR_IA32_MCU_OPT_CTRL 0x00000123#define RNGDS_MITG_DIS BIT(0)/* SRBDS support */ #define RTM_ALLOW BIT(1)/* TSX development mode */ +#define FB_CLEAR_DIS BIT(3)/* CPU Fill buffer clear disable */ #define MSR_IA32_SYSENTER_CS 0x00000174#define MSR_IA32_SYSENTER_ESP 0x00000175
arch/x86/kvm/vmx/vmx.c +69 -0
111 lines not on this page · raw message
arch/x86/kvm/vmx/vmx.h +2 -0
@@ -348,6 +348,8 @@ struct vcpu_vmx {u64 msr_ia32_feature_control_valid_bits;/* SGX Launch Control public key hash */ u64 msr_ia32_sgxlepubkeyhash[4 ]; +u64 msr_ia32_mcu_opt_ctrl; +bool disable_fb_clear;struct pt_desc pt_desc;struct lbr_desc lbr_desc;
arch/x86/kvm/x86.c +3 -0
@@ -1587,6 +1587,9 @@ static u64 kvm_get_arch_capabilities(voi*/ } +/* Guests don't need to know "Fill buffer clear control" exists */ + data &= ~ARCH_CAP_FB_CLEAR_CTRL ; +return data; }
tools/arch/x86/include/asm/msr-index.h +6 -0
@@ -133,6 +133,11 @@* VERW clears CPU fill buffer * even on MDS_NO CPUs. */ +#define ARCH_CAP_FB_CLEAR_CTRL BIT(18)/* +* MSR_IA32_MCU_OPT_CTRL[FB_CLEAR_DIS] +* bit available to control VERW +* behavior. +*/ #define MSR_IA32_FLUSH_CMD 0x0000010b#define L1D_FLUSH BIT(0)/*
@@ -150,6 +155,7 @@#define MSR_IA32_MCU_OPT_CTRL 0x00000123#define RNGDS_MITG_DIS BIT(0)/* SRBDS support */ #define RTM_ALLOW BIT(1)/* TSX development mode */ +#define FB_CLEAR_DIS BIT(3)/* CPU Fill buffer clear disable */ #define MSR_IA32_SYSENTER_CS 0x00000174#define MSR_IA32_SYSENTER_ESP 0x00000175
Greg Kroah-Hartman
maintainerPATCH 11/11 x86/speculation/mmio: Print SMT warning
In reply to Greg Kroah-HartmanFrom: Josh Poimboeuf <[email protected]>
commit 1dc6ff02c8bf77d71b9b5d11cbc9df77cfb28626 upstream
Similar to MDS and TAA, print a warning if SMT is enabled for the MMIO Stale Data vulnerability.
--- arch/x86/kernel/cpu/bugs.c | 11 +++++++++++ 1 file changed, 11 insertions(+)
arch/x86/kernel/cpu/bugs.c +11 -0
@@ -1258,6 +1258,7 @@ static void update_mds_branch_idle(void)#define MDS_MSG_SMT "MDS CPU bug present and SMT on, data leak possible. See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/mds.html for more details.\n"#define TAA_MSG_SMT "TAA CPU bug present and SMT on, data leak possible. See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/tsx_async_abort.html for more details.\n" +#define MMIO_MSG_SMT "MMIO Stale Data CPU bug present and SMT on, data leak possible. See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/processor_mmio_stale_data.html for more details.\n"void cpu_bugs_smt_update (void ) {
@@ -1302,6 +1303,16 @@ void cpu_bugs_smt_update(void)break ; } +switch (mmio_mitigation) { +case MMIO_MITIGATION_VERW : +case MMIO_MITIGATION_UCODE_NEEDED : +if (sched_smt_active ()) +pr_warn_once (MMIO_MSG_SMT ); +break ; +case MMIO_MITIGATION_OFF : +break ; + } +mutex_unlock (&spec_ctrl_mutex); }
Quoted 9 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.18.y
and the diffstat can be found below.thanks,
greg k-h
On ARCH_BRCMSTB using 32-bit and 64-bit ARM kernels:
Signature · 1 line
Florian
Quoted 9 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 9 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.18.y
and the diffstat can be found below.thanks,
greg k-h
5.18.5-rc1 Successfully Compiled and booted on my Raspberry PI 4b (8g) (bcm2711)
Quoted 9 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 9 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.18.y
and the diffstat can be found below.thanks,
greg k-h
Compiled and booted on my test system. No dmesg regressions.
thanks,
-- Shuah
Quoted 9 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.18.y
and the diffstat can be found below.thanks,
greg k-h
Built and booted successfully on RISC-V RV64 (HiFive Unmatched).
Quoted 4 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Successfully cross-compiled for arm (multi_v7_defconfig, GCC 12.1.0, ARMv7 with neon FPU) and arm64 (bcm2711_defconfig, GCC 12.1.0).
Signature · 1 line
An old man doll... just what I always wanted! - Clara
Quoted 7 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
Hi Greg,
5.18.5-rc1 tested.
Run tested on:
- Intel Tiger Lake x86_64 (nuc11 i7-1165G7)
- Allwinner H6 (Tanix TX6)
In addition - build tested for:
- Allwinner A64
- Allwinner H3
- Allwinner H5
- NXP iMX6
- NXP iMX8
- Qualcomm Dragonboard
- Rockchip RK3288
- Rockchip RK3328
- Rockchip RK3399pro
- Samsung Exynos
--
Rudi
Quoted 10 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.18.y
and the diffstat can be found below.thanks,
greg k-h
Results from Linaro’s test farm.
No regressions on arm64, arm, x86_64, and i386.
## Build
* kernel: 5.18.5-rc1
* git: https://gitlab.com/Linaro/lkft/mirrors/stable/linux-stable-rc
* git branch: linux-5.18.y
* git commit: 0e32b2c68ea4d90e0ecca45afd07dcf5d594de7e
* git describe: v5.18.4-12-g0e32b2c68ea4
* test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-5.18.y/build/v5.18.4-12-g0e32b2c68ea4
## Test Regressions (compared to v5.18.4)
No test regressions found.
## Metric Regressions (compared to v5.18.4)
No metric regressions found.
## Test Fixes (compared to v5.18.4)
No test fixes found.
## Metric Fixes (compared to v5.18.4)
No metric fixes found.
## Test result summary
total: 127841, pass: 115630, fail: 544, skip: 10874, xfail: 793
## Build Summary
* arc: 10 total, 10 passed, 0 failed
* arm: 319 total, 316 passed, 3 failed
* arm64: 64 total, 62 passed, 2 failed
* i386: 57 total, 50 passed, 7 failed
* mips: 41 total, 38 passed, 3 failed
* parisc: 14 total, 14 passed, 0 failed
* powerpc: 65 total, 56 passed, 9 failed
* riscv: 32 total, 27 passed, 5 failed
* s390: 23 total, 20 passed, 3 failed
* sh: 26 total, 24 passed, 2 failed
* sparc: 14 total, 14 passed, 0 failed
* x86_64: 62 total, 58 passed, 4 failed
## Test suites summary
* fwts
* igt-gpu-tools
* kselftest-android
* kselftest-breakpoints
* kselftest-capabilities
* kselftest-cgroup
* kselftest-clone3
* kselftest-core
* kselftest-cpu-hotplug
* kselftest-cpufreq
* kselftest-drivers-dma-buf
* kselftest-efivarfs
* kselftest-filesystems
* kselftest-filesystems-binderfs
* kselftest-firmware
* kselftest-fpu
* kselftest-gpio
* kselftest-ipc
* kselftest-ir
* kselftest-kcmp
* kselftest-lib
* kselftest-membarrier
* kselftest-netfilter
* kselftest-nsfs
* kselftest-openat2
* kselftest-pid_namespace
* kselftest-pidfd
* kselftest-proc
* kselftest-pstore
* kselftest-rseq
* kselftest-rtc
* kselftest-seccomp
* kselftest-sigaltstack
* kselftest-size
* kselftest-splice
* kselftest-static_keys
* kselftest-sync
* kselftest-sysctl
* kselftest-tc-testing
* kselftest-timens
* kselftest-timers
* kselftest-tmpfs
* kselftest-tpm2
* kselftest-user
* kselftest-vm
* kselftest-zram
* kunit
* kunit/15
* kunit/261
* kunit/3
* kunit/427
* kunit/90
* kvm-unit-tests
* libgpiod
* libhugetlbfs
* log-parser-boot
* log-parser-test
* ltp-cap_bounds
* ltp-cap_bounds-tests
* ltp-commands
* ltp-commands-tests
* ltp-containers
* ltp-containers-tests
* ltp-controllers-tests
* ltp-cpuhotplug-tests
* ltp-crypto
* ltp-crypto-tests
* ltp-cve-tests
* ltp-dio-tests
* ltp-fcntl-locktests
* ltp-fcntl-locktests-tests
* ltp-filecaps
* ltp-filecaps-tests
* ltp-fs
* ltp-fs-tests
* ltp-fs_bind
* ltp-fs_bind-tests
* ltp-fs_perms_simple
* ltp-fs_perms_simple-tests
* ltp-fsx
* ltp-fsx-tests
* ltp-hugetlb
* ltp-hugetlb-tests
* ltp-io
* ltp-io-tests
* ltp-ipc
* ltp-ipc-tests
* ltp-math-tests
* ltp-mm-tests
* ltp-nptl
* ltp-nptl-tests
* ltp-open-posix-tests
* ltp-pty
* ltp-pty-tests
* ltp-sched
* ltp-sched-tests
* ltp-securebits
* ltp-securebits-tests
* ltp-smoke
* ltp-syscalls-tests
* ltp-tracing-tests
* network-basic-tests
* packetdrill
* perf
* perf/Zstd-perf.data-compression
* rcutorture
* ssuite
* v4l2-compliance
* vdso
--
Linaro LKFT
https://lkft.linaro.org
Quoted 8 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
Build results:
total: 154 pass: 154 fail: 0 Qemu test results: total: 489 pass: 489 fail: 0
Guenter
Quoted 9 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.18.y
and the diffstat can be found below.thanks,
greg k-h
All tests passing for Tegra ...
Test results for stable-v5.18:
10 builds: 10 pass, 0 fail
28 boots: 28 pass, 0 fail
130 tests: 130 pass, 0 failLinux version: 5.18.5-rc1-g0e32b2c68ea4
Boards tested: tegra124-jetson-tk1, tegra186-p2771-0000,
tegra194-p2972-0000, tegra194-p3509-0000+p3668-0000,
tegra20-ventana, tegra210-p2371-2180,
tegra210-p3450-0000, tegra30-cardhu-a04Jon
Signature · 1 line
nvpublic
Quoted 9 lines · Greg Kroah-Hartman
This is the start of the stable review cycle for the 5.18.5 release. There are 11 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Thu, 16 Jun 2022 18:37:02 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at:
Quoted 8 lines
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.18.5-rc1.gzor in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gitlinux-5.18.y
and the diffstat can be found below.thanks,
greg k-h
Tested rc1 against the Fedora build system (aarch64, armv7, ppc64le, s390x, x86_64), and boot tested x86_64. No regressions noted.