NFSv4: Don't hold the layoutget locks across multiple RPC calls in Kernel

Kernel Updated 02 Oct 2025

Summary

28/06/2022
N/A
No i
Unrated
Not published

GSD-2022-1003226: NFSv4: Don't hold the layoutget locks across multiple RPC calls. Affects Kernel versions < d4c2a041ed3ba114502d5ed6ace5b1a48d637a8e. 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 Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

The Kernel is a critical component of the Linux operating system that provides core functionalities and interfaces between hardware and software. It manages system resources, facilitates communication between different software components, and ensures the overall stability and security of the system. NFSv4 (Network File System version 4) is a protocol implemented in the Kernel that allows remote file access over a network.

NFSv4 relies on RPC (Remote Procedure Call) for communication between the client and server. RPC calls are used to perform various operations, including file locking, caching, and layout management.

One of the RPC calls in NFSv4 is layoutget, which is responsible for obtaining file layout information from the server. This vulnerability specifically affects the handling of layoutget locks across multiple RPC calls.

Vulnerability Detail

The vulnerability in NFSv4 lies in the improper handling of layoutget locks across multiple RPC calls. When a layoutget lock is acquired during an RPC call, it should be released before making subsequent RPC calls. However, due to a flaw in the implementation, the lock is not released, leading to a potential deadlock situation.

An attacker could exploit this vulnerability by sending a series of malicious RPC calls that trigger the acquisition of layoutget locks without their proper release. This could result in a denial-of-service condition, as the system becomes unresponsive due to the deadlock.

It is important to note that the impact and attack plausibility of this vulnerability have not yet been proven.

How To Fix

No fixed version is published for this vulnerability.

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

Workaround

As a workaround, users can apply the patch manually to the existing Kernel version. The patch can be obtained from the commit d4c2a041ed3ba114502d5ed6ace5b1a48d637a8e in the Linux Kernel repository.

To apply the patch, follow these steps:

  1. Clone the Linux Kernel repository using the command: git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
  2. Checkout the commit associated with the patch using the command: git checkout d4c2a041ed3ba114502d5ed6ace5b1a48d637a8e
  3. Apply the patch to the Kernel source code using the appropriate patching tool.
  4. Recompile and install the patched Kernel following the instructions provided in the Kernel documentation.
  5. Reboot the system to apply the changes.

Conclusion

In conclusion, the NFSv4 vulnerability in the Kernel related to the improper handling of layoutget locks across multiple RPC calls can lead to a potential denial-of-service condition. It is crucial to update the Kernel to the latest version or apply the provided patch to mitigate the vulnerability. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for Kernel →

Share this vulnerability

FAQ

NFSv4 (Network File System version 4) is a protocol implemented in the Kernel that allows remote file access over a network. It provides a standardized method for clients to access and manage files on a server.

RPC (Remote Procedure Call) is a communication protocol used by NFSv4 for client-server interaction. It enables the client to invoke procedures or functions on the server remotely.

layoutget is an RPC call in NFSv4 that is used to obtain file layout information from the server. It helps in optimizing file access by providing details about the layout of data blocks on the server.

The impact of this vulnerability is a potential denial-of-service condition. An attacker could exploit the flaw to cause a deadlock situation, rendering the system unresponsive.

No, the impact and attack plausibility of this vulnerability have not yet been proven. However, it is still recommended to apply the available fix or workaround to mitigate any potential risks.

Related vulnerabilities

Recent vulnerabilities recorded for Kernel.

How To Fix

No fixed version is published for this vulnerability.

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