x86/fpu: Prevent state corruption in __fpu__restore_sig() - Kernel

Kernel Updated 02 Oct 2025

Summary

30/06/2021
N/A
No i
Unrated
Not published

GSD-2021-1001082: x86/fpu: Prevent state corruption in fpurestore_sig(). Affects Kernel versions >= b860eb8dce5906b14e3a7f3c771e0b3d6ef61b94, < ec25ea1f3f05d6f8ee51d1277efea986eafd4f2a. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The Kernel is a critical component of the Linux operating system that manages system resources and provides an interface for applications to interact with the hardware. It is responsible for tasks such as process management, memory management, and device drivers. The x86/fpu subsystem in the Kernel handles floating-point operations and manages the state of the floating-point unit (FPU) in the CPU. The FPU state includes registers and control flags that are used for floating-point calculations. The vulnerability in the __fpu__restore_sig() function can lead to state corruption in the FPU, potentially causing incorrect floating-point calculations and unexpected behavior in applications that rely on accurate floating-point operations.

Vulnerability Detail

The vulnerability in the __fpu__restore_sig() function of the x86/fpu subsystem in the Kernel can result in state corruption in the FPU. This can occur when restoring the FPU state during a signal handler execution. An attacker could exploit this vulnerability to manipulate the FPU state and potentially cause incorrect floating-point calculations or trigger unexpected behavior in applications that rely on accurate floating-point operations. The impact of this vulnerability may vary depending on the specific use case and the sensitivity of the applications running on the affected system. It is important to note that the actual impact and attack plausibility have not yet been proven.

How To Fix

No fixed version is published for this vulnerability.

The vulnerability has been fixed in Linux Kernel version v5.12.13 by commit ec25ea1f3f05d6f8ee51d1277efea986eafd4f2a. To fix the vulnerability, users should update their Kernel to a version that includes this commit. This can be done by downloading the latest stable version of the Kernel from the official Git repository (https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/) and following the installation instructions provided by the Kernel developers.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

There is no specific workaround mentioned for this vulnerability.

Conclusion

The x86/fpu subsystem in the Kernel is vulnerable to state corruption in the __fpu__restore_sig() function. This vulnerability can potentially lead to incorrect floating-point calculations and unexpected behavior in applications. It is crucial to update the Kernel to a version that includes the fix commit (ec25ea1f3f05d6f8ee51d1277efea986eafd4f2a) to mitigate the risk. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for Kernel →

Share this vulnerability

FAQ

The x86/fpu subsystem in the Kernel is responsible for handling floating-point operations and managing the state of the floating-point unit (FPU) in the CPU. It ensures accurate floating-point calculations and provides support for applications that require precise numerical computations.

An attacker could exploit this vulnerability by crafting a malicious signal handler that triggers the __fpu__restore_sig() function and manipulates the FPU state. This could lead to incorrect floating-point calculations or unexpected behavior in applications that rely on accurate floating-point operations.

The impact of this vulnerability may vary depending on the specific use case and the sensitivity of the applications running on the affected system. It could result in incorrect floating-point calculations, which can have implications for applications that rely on precise numerical computations.

No, the actual impact and attack plausibility of this vulnerability have not yet been proven. However, it is still important to apply the fix to ensure the integrity of floating-point operations and mitigate potential risks.

To fix this vulnerability, users should update their Kernel to a version that includes the fix commit (ec25ea1f3f05d6f8ee51d1277efea986eafd4f2a). This can be done by downloading the latest stable version of the Kernel from the official Git repository and following the installation instructions provided by the Kernel developers.

Related vulnerabilities

Recent vulnerabilities recorded for Kernel.

How To Fix

No fixed version is published for this vulnerability.

The vulnerability has been fixed in Linux Kernel version v5.12.13 by commit ec25ea1f3f05d6f8ee51d1277efea986eafd4f2a. To fix the vulnerability, users should update their Kernel to a version that includes this commit. This can be done by downloading the latest stable version of the Kernel from the official Git repository (https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/) and following the installation instructions provided by the Kernel developers.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback

Follow Vulert in Google

Get more Vulert vulnerability and dependency-security updates in Google Search and AI results.