CVE-2025-68171
NoneCVSS
—
EPSS
0.2%
Published
Dec 16, 2025
CISA due date
—
Cloudanix analysis
A Linux kernel bug can cause unexpected warnings and instability when certain advanced math instructions interact with signal handling during task switching.
- Exploitation
- Local Privilege
- Attacker needs
- Local User
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Race Condition
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Race condition in x86 FPU handling allows XFD MSR state to become inconsistent with fpstate::xfd during signal delivery after preemption by an AMX task, triggering a kernel warning in xfd_validate_state and preventing proper resynchronization of extended feature state.
Why it matters to the business
Kernel warnings and potential FPU state corruption during signal handling can cause application instability or crashes on systems running mixed workloads involving advanced vector extensions, increasing operational risk for compute-heavy environments until patched.
How an attack unfolds
An attacker triggers preemption between a non-AMX task and an AMX-enabled task that alters the XFD MSR; on signal delivery the non-AMX task reloads stale XSTATE, causing the mismatch that the vulnerable fpu__clear_user_states path fails to correct.
How to fix it
Upgrade affected Ubuntu packages to the listed fixed versions: linux 3.11.0-12.19 or 4.4.0-2.16 or 5.15.0-23.23, linux-aws 4.4.0-1002.2 or 4.4.0-1001.10 or 5.15.0-1003.5, linux-lts-xenial 4.4.0-13.29~14.04.1, linux-kvm 4.4.0-1004.9, and the corresponding 5.15.0-* updates for azure, gcp, hwe, ibm, intel-iotg, lowlatency, oracle, riscv and gkeop variants.
How to confirm the fix worked
Confirm the running kernel version matches a fixed package, then exercise signal delivery under AMX preemption workloads and verify absence of the xfd_validate_state warning.
Typical attack path
- Run or coerce a non-AMX process on a system also executing AMX workloads
- Force preemption and signal delivery during FPU state transitions
- Trigger fpu__clear_user_states without XFD resync, producing the warning and inconsistent state
How to detect it
Search kernel logs for the string 'WARNING: CPU:' accompanied by 'xfd_validate_state' or stack traces containing fpu__clear_user_states and arch_do_signal_or_restart; correlate with workloads involving AMX or dynamic XSTATE features.
What your security team should do
- Apply the exact fixed kernel packages for each affected Ubuntu release immediately
- Prioritize patching systems that run mixed vector workloads or host KVM guests
- Monitor kernel logs for xfd_validate_state warnings until all instances are updated
The record
In the Linux kernel, the following vulnerability has been resolved: x86/fpu: Ensure XFD state on signal delivery Sean reported [1] the following splat when running KVM tests: WARNING: CPU: 232 PID: 15391 at xfd_validate_state+0x65/0x70 Call Trace: <TASK> fpu__clear_user_states+0x9c/0x100 arch_do_signal_or_restart+0x142/0x210 exit_to_user_mode_loop+0x55/0x100 do_syscall_64+0x205/0x2c0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 Chao further identified [2] a reproducible scenario involving signal delivery: a non-AMX task is preempted by an AMX-enabled task which modifies the XFD MSR. When the non-AMX task resumes and reloads XSTATE with init values, a warning is triggered due to a mismatch between fpstate::xfd and the CPU's current XFD state. fpu__clear_user_states() does not currently re-synchronize the XFD state after such preemption. Invoke xfd_update_state() which detects and corrects the mismatch if there is a dynamic feature. This also benefits the sigreturn path, as fpu__restore_sig() may call fpu__clear_user_states() when the sigframe is inaccessible. [ dhansen: minor changelog munging ]
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Linux | Kernel | 5.16.0 | 6.1.159 |
| Mageia:9 | kernel | 0 | 6.6.120-1.mga9 |
| Mageia:9 | kernel-linus | 0 | 6.6.120-1.mga9 |
| Mageia:9 | kmod-virtualbox | 0 | 7.1.14-14.mga9 |
| Mageia:9 | kmod-xtables-addons | 0 | 3.24-88.mga9 |
| openSUSE:Leap 16.0 | dtb-aarch64 | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-64kb | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-azure | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-default | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-default-base | 0 | 6.12.0-160000.9.1.160000.2.6 |
| openSUSE:Leap 16.0 | kernel-docs | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-kvmsmall | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-obs-build | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-obs-qa | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-rt | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-source | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-syms | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-zfcpdump | 0 | 6.12.0-160000.9.1 |
Related vulnerabilities
- CVE-2026-23226 In the Linux kernel, the following vulnerability has been resolved: ksmbd: add chann_lock… Also affects Kernel
- CVE-2026-23225 In the Linux kernel, the following vulnerability has been resolved: sched/mmcid: Don't… Also affects Kernel
- CVE-2026-23230 In the Linux kernel, the following vulnerability has been resolved: smb: client: split… Also affects Kernel
- CVE-2026-23224 In the Linux kernel, the following vulnerability has been resolved: erofs: fix UAF issue… Also affects Kernel
- CVE-2026-23227 In the Linux kernel, the following vulnerability has been resolved: drm/exynos: vidi: use… Also affects Kernel
- CVE-2026-23223 In the Linux kernel, the following vulnerability has been resolved: xfs: fix UAF in… Also affects Kernel
- CVE-2026-23228 In the Linux kernel, the following vulnerability has been resolved: smb: server: fix leak… Also affects Kernel
- CVE-2026-23229 In the Linux kernel, the following vulnerability has been resolved: crypto: virtio - Add… Also affects Kernel