Description
In the Linux kernel, the following vulnerability has been resolved:
arm64/fpsimd: signal: Fix restoration of SVE context
When SME is supported, Restoring SVE signal context can go wrong in a
few ways, including placing the task into an invalid state where the
kernel may read from out-of-bounds memory (and may potentially take a
fatal fault) and/or may kill the task with a SIGKILL.
(1) Restoring a context with SVE_SIG_FLAG_SM set can place the task into
an invalid state where SVCR.SM is set (and sve_state is non-NULL)
but TIF_SME is clear, consequently resuting in out-of-bounds memory
reads and/or killing the task with SIGKILL.
This can only occur in unusual (but legitimate) cases where the SVE
signal context has either been modified by userspace or was saved in
the context of another task (e.g. as with CRIU), as otherwise the
presence of an SVE signal context with SVE_SIG_FLAG_SM implies that
TIF_SME is already set.
While in this state, task_fpsimd_load() will NOT configure SMCR_ELx
(leaving some arbitrary value configured in hardware) before
restoring SVCR and attempting to restore the streaming mode SVE
registers from memory via sve_load_state(). As the value of
SMCR_ELx.LEN may be larger than the task's streaming SVE vector
length, this may read memory outside of the task's allocated
sve_state, reading unrelated data and/or triggering a fault.
While this can result in secrets being loaded into streaming SVE
registers, these values are never exposed. As TIF_SME is clear,
fpsimd_bind_task_to_cpu() will configure CPACR_ELx.SMEN to trap EL0
accesses to streaming mode SVE registers, so these cannot be
accessed directly at EL0. As fpsimd_save_user_state() verifies the
live vector length before saving (S)SVE state to memory, no secret
values can be saved back to memory (and hence cannot be observed via
ptrace, signals, etc).
When the live vector length doesn't match the expected vector length
for the task, fpsimd_save_user_state() will send a fatal SIGKILL
signal to the task. Hence the task may be killed after executing
userspace for some period of time.
(2) Restoring a context with SVE_SIG_FLAG_SM clear does not clear the
task's SVCR.SM. If SVCR.SM was set prior to restoring the context,
then the task will be left in streaming mode unexpectedly, and some
register state will be combined inconsistently, though the task will
be left in legitimate state from the kernel's PoV.
This can only occur in unusual (but legitimate) cases where ptrace
has been used to set SVCR.SM after entry to the sigreturn syscall,
as syscall entry clears SVCR.SM.
In these cases, the the provided SVE register data will be loaded
into the task's sve_state using the non-streaming SVE vector length
and the FPSIMD registers will be merged into this using the
streaming SVE vector length.
Fix (1) by setting TIF_SME when setting SVCR.SM. This also requires
ensuring that the task's sme_state has been allocated, but as this could
contain live ZA state, it should not be zeroed. Fix (2) by clearing
SVCR.SM when restoring a SVE signal context with SVE_SIG_FLAG_SM clear.
For consistency, I've pulled the manipulation of SVCR, TIF_SVE, TIF_SME,
and fp_type earlier, immediately after the allocation of
sve_state/sme_state, before the restore of the actual register state.
This makes it easier to ensure that these are always modified
consistently, even if a fault is taken while reading the register data
from the signal context. I do not expect any software to depend on the
exact state restored when a fault is taken while reading the context.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Linux | Linux | 5.19 | 6.1.162 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | linux | 6.18.8-1 | — |
| Debian 13 | linux | No fix yet | — |
| Debian 12 | linux | 6.1.162-1 | DSA-6127-1 |
| Debian 11 | linux-6.1 | 6.1.162-1~deb11u1 | DLA-4476-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Nvidia-BlueField 24.04 LTS | linux-bluefield | 6.8.0-1022.26 | — |
| Ubuntu 25.10 | linux +8 | No fix yet | — |
| Ubuntu 24.04 LTS | linux | 6.8.0-117.117 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-aws | 6.8.0-1055.58 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-azure | 6.8.0-1056.62 | USN-8278-2 |
| Ubuntu 24.04 LTS | linux-azure-6.17 | 6.17.0-1021.21~24.04.1 | USN-8604-1 |
| Ubuntu 24.04 LTS | linux-azure-fde | 6.8.0-1058.65 | — |
| Ubuntu 24.04 LTS | linux-azure-fde-6.17 | 6.17.0-1018.18~24.04.1 | USN-8605-1 |
| Ubuntu 24.04 LTS | linux-azure-nvidia | 6.8.0-1039.42 | — |
| Ubuntu 24.04 LTS | linux-gcp | 6.8.0-1058.61 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-gcp-6.17 | 6.17.0-1021.24~24.04.1 | USN-8570-1 |
| Ubuntu 24.04 LTS | linux-gke | 6.8.0-1054.60 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-gkeop | 6.8.0-1041.44 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-hwe-6.17 | 6.17.0-41.41~24.04.1 | — |
| Ubuntu 24.04 LTS | linux-ibm | 6.8.0-1055.56 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-lowlatency | 6.8.0-117.117.1 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-nvidia | 6.8.0-1054.57 | USN-8289-1 |
| Ubuntu 24.04 LTS | linux-nvidia-6.17 | 6.17.0-1031.31 | USN-8669-1 |
| Ubuntu 24.04 LTS | linux-nvidia-lowlatency | 6.8.0-1054.57.1 | USN-8289-1 |
| Ubuntu 24.04 LTS | linux-nvidia-tegra | 6.8.0-1024.24 | USN-8296-2 |
| Ubuntu 24.04 LTS | linux-oem-6.17 | 6.17.0-1030.30 | USN-8594-1 |
| Ubuntu 24.04 LTS | linux-oracle | 6.8.0-1054.55 | — |
| Ubuntu 24.04 LTS | linux-oracle-6.17 | 6.17.0-1019.19~24.04.3 | USN-8570-2 |
| Ubuntu 24.04 LTS | linux-raspi | 6.8.0-1056.60 | USN-8278-1 |
| Ubuntu 24.04 LTS | linux-riscv +20 | No fix yet | — |
| Ubuntu 24.04 LTS | linux-xilinx | 6.8.0-1032.33 | USN-8499-1 |
| Ubuntu 22.04 LTS | linux-aws-6.8 | 6.8.0-1057.60~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-azure-6.8 | 6.8.0-1059.65~22.04.1 | USN-8440-1 |
| Ubuntu 22.04 LTS | linux-azure-fde-6.8 | 6.8.0-1058.65~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-gcp-6.8 | 6.8.0-1060.63~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-hwe-6.8 | 6.8.0-124.124~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-ibm-6.8 | 6.8.0-1055.56~22.04.1 | USN-8278-1 |
| Ubuntu 22.04 LTS | linux-lowlatency-hwe-6.8 | 6.8.0-117.117.1~22.04.1 | USN-8278-1 |
| Ubuntu 22.04 LTS | linux-nvidia-6.8 | 6.8.0-1054.57~22.04.1 | USN-8289-2 |
| Ubuntu 22.04 LTS | linux-oracle-6.8 | 6.8.0-1054.55~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-riscv +32 | No fix yet | — |
| Ubuntu 22.04 LTS | linux-riscv-6.8 | 6.8.0-117.117~22.04.1 | — |
| Ubuntu 20.04 LTS | linux-gke +28 | No fix yet | — |
Show 5 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | linux-gcp +14 | No fix yet | — |
| Ubuntu 16.04 LTS | linux-hwe-edge | No fix yet | — |
| Ubuntu Pro Realtime 24.04 LTS | linux-raspi-realtime | 6.8.0-2045.46 | USN-8278-1 |
| Ubuntu Pro Realtime 24.04 LTS | linux-realtime | 6.8.1-1051.52 | USN-8278-1 |
| Ubuntu Pro Realtime 24.04 LTS | linux-realtime-6.14 | No fix yet | — |
| Ubuntu Pro Realtime 24.04 LTS | linux-realtime-6.17 | 6.17.0-1018.20~24.04.1 | USN-8570-1 |
| Ubuntu Pro Realtime 22.04 LTS | linux-realtime-6.8 | 6.8.1-1051.52~22.04.1 | USN-8278-1 |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-aws-fips | 6.8.0-1055.58+fips1 | USN-8278-1 |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-azure-fips | 6.8.0-1059.65+fips1 | USN-8393-1 |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-fips | 6.8.0-116.116+fips1 | USN-8296-1 |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-gcp-fips | 6.8.0-1058.61+fips1 | USN-8278-1 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP7 | kernel-64kb +7 | 6.4.0-150700.53.34.1 | SUSE-SU-2026:1081-1 |
| SLES 15 SP7 | kernel-default-base | 6.4.0-150700.53.34.1.150700.17.23.1 | SUSE-SU-2026:1081-1 |
Show 7 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES for SAP 16.0 | kernel-64kb +8 | 6.12.0-160000.27.1 | SUSE-SU-2026:20931-1 |
| SLES for SAP 16.0 | kernel-default-base | 6.12.0-160000.27.1.160000.2.8 | SUSE-SU-2026:20931-1 |
| SLES 16.0 | kernel-64kb +8 | 6.12.0-160000.27.1 | SUSE-SU-2026:20931-1 |
| SLES 16.0 | kernel-default-base | 6.12.0-160000.27.1.160000.2.8 | SUSE-SU-2026:20931-1 |
| SLE Micro 6.2 | kernel-default-base | 6.12.0-160000.27.1.160000.2.8 | SUSE-SU-2026:20838-1 |
| SLE Micro 6.2 | kernel-rt +5 | 6.12.0-160000.27.1 | SUSE-SU-2026:20873-1, SUSE-SU-2026:20838-1 |
| SLE Micro 6.1 | kernel-default-base | 6.4.0-40.1.21.17 | SUSE-SU-2026:20667-1 |
| SLE Micro 6.1 | kernel-rt +4 | 6.4.0-40.1 | SUSE-SU-2026:20876-1, SUSE-SU-2026:20667-1 |
| SLE Micro 6.0 | kernel-default-base | 6.4.0-40.1.21.17 | SUSE-SU-2026:20720-1 |
| SLE Micro 6.0 | kernel-rt +4 | 6.4.0-40.1 | SUSE-SU-2026:20845-1, SUSE-SU-2026:20720-1 |
| SLE Live Patching 15 SP7 | kernel-default | 6.4.0-150700.53.34.1 | SUSE-SU-2026:1081-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7-RT_Update_10 | 1-150700.1.3.1 | SUSE-SU-2026:0962-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7_Update_10 | 1-150700.15.3.1 | SUSE-SU-2026:1081-1 |
| SUSE Real Time Module 15 SP7 | kernel-rt +2 | 6.4.0-150700.7.34.1 | SUSE-SU-2026:0962-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Leap 16.0 | kernel-default-base | 6.12.0-160000.27.1.160000.2.8 | openSUSE-SU-2026:20416-1 |
| openSUSE Leap 16.0 | kernel-rt +11 | 6.12.0-160000.27.1 | openSUSE-SU-2026:20416-1 |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2023 | kernel-livepatch-6.1.163-186.299 +1 | 1:1.0-0.amzn2023 | ALAS2023-2026-1646, ALAS2023-2026-1468 |
| Amazon Linux 2023 | perf +14 | 1:6.1.163-186.299.amzn2023 | ALAS2023-2026-1468 |
| Amazon Linux 2023 | perf6.12 +14 | 1:6.12.80-105.147.amzn2023 | ALAS2023-2026-1646 |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | kernel | 6.6.126.1-1 | — |
Advisories 30
- WID-SEC-2026-0324 Linux Kernel: Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 11, 2026
- USN-8604-1 linux-azure-6.17 vulnerabilities Ubuntu Security Notices (USN) · Nov 7, 2026
- USN-8440-1 linux-azure-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 7, 2026
- USN-8499-1 linux-xilinx vulnerabilities Ubuntu Security Notices (USN) · Nov 7, 2026
- USN-8393-1 linux-azure-fips vulnerabilities Ubuntu Security Notices (USN) · Nov 7, 2026
- USN-8669-1 linux-nvidia-6.17 vulnerabilities Ubuntu Security Notices (USN) · Nov 6, 2026
- USN-8570-1 linux-gcp-6.17, linux-realtime-6.17 vulnerabilities Ubuntu Security Notices (USN) · Nov 6, 2026
- USN-8570-2 linux-oracle-6.17 vulnerabilities Ubuntu Security Notices (USN) · Nov 6, 2026
- USN-8594-1 linux-oem-6.17 vulnerabilities Ubuntu Security Notices (USN) · Nov 6, 2026
- USN-8278-1 linux, linux-aws, linux-aws-fips, linux-gcp, linux-gcp-fips, linux-gke, linux-gkeop, linux-ibm, linux-ibm-6.8, linux-lowlatency, linux-lowlatency-hwe-6.8, linux-raspi, linux-raspi-realtime, linux-realtime, linux-realtime-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 5, 2026
- USN-8289-1 linux-nvidia, linux-nvidia-lowlatency vulnerabilities Ubuntu Security Notices (USN) · Nov 5, 2026
- USN-8289-2 linux-nvidia-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 5, 2026
- USN-8278-2 linux-azure vulnerabilities Ubuntu Security Notices (USN) · Nov 5, 2026
- USN-8296-1 linux-fips vulnerabilities Ubuntu Security Notices (USN) · Nov 4, 2026
- USN-8296-2 linux-nvidia-tegra vulnerabilities Ubuntu Security Notices (USN) · Nov 4, 2026
- USN-8605-1 linux-azure-fde-6.17 vulnerabilities Ubuntu Security Notices (USN) · Oct 17, 2026
- SUSE-SU-2026:20873-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Jul 9, 2026
- ALAS2023-2026-1646 Important: kernel6.12 security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · May 11, 2026
- SUSE-SU-2026:20931-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Apr 2, 2026
- SUSE-SU-2026:20876-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 31, 2026
- openSUSE-SU-2026:20416-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 29, 2026
- SUSE-SU-2026:20845-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 28, 2026
- SUSE-SU-2026:20838-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 28, 2026
- SUSE-SU-2026:1081-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 27, 2026
- ALAS2023-2026-1468 Important: kernel security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · Mar 26, 2026
- SUSE-SU-2026:0962-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 24, 2026
- SUSE-SU-2026:20720-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2026:20667-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- DSA-6127-1 linux - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DLA-4476-1 linux-6.1 - security update Debian Security (DSA / DLA) · Feb 10, 2026