PCI: Avoid pci_dev_lock() AB/BA deadlock with sriov_numvfs_store() in Kernel

Kernel Updated 02 Oct 2025

Summary

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

GSD-2022-1003869: PCI: Avoid pci_dev_lock() AB/BA deadlock with sriov_numvfs_store(). Affects Kernel versions < aed6d4d519210c28817948f34c53b6e058e0456c. 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 Penetration testing for web, API and mobile 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 fundamental component of the Linux operating system that provides core functionality and interfaces with hardware devices. It manages the communication between software and hardware, including the Peripheral Component Interconnect (PCI) bus. The PCI subsystem allows devices to be connected to a computer and enables the operating system to interact with them. This vulnerability specifically affects the Kernel's handling of the sriov_numvfs_store() function, which is responsible for configuring the number of Virtual Functions (VFs) for a SR-IOV (Single Root I/O Virtualization) device.

Vulnerability Detail

The vulnerability arises from a potential deadlock scenario involving the pci_dev_lock(). When multiple threads attempt to modify the number of VFs concurrently, a deadlock can occur due to inconsistent locking order. This can lead to a system freeze or crash, impacting the stability and availability of the affected system. The vulnerability has been addressed in Linux Kernel version v4.19.247 through the commit aed6d4d519210c28817948f34c53b6e058e0456c.

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

There is no known workaround for this vulnerability. It is essential to apply the fix by updating the Linux Kernel to the recommended version.

Conclusion

In conclusion, the vulnerability in the Kernel's handling of sriov_numvfs_store() can lead to a deadlock scenario, resulting in system instability and potential crashes. It is crucial to update the Linux Kernel to version v4.19.247 or later to mitigate this vulnerability. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for Kernel →

Share this vulnerability

FAQ

The vulnerability can result in a system freeze or crash, affecting the stability and availability of the affected system.

You can use the Vulert Playground (https://vulert.com/scanner) to check if your system is affected by this vulnerability. Simply upload your package-lock.json file to the playground, and it will provide real-time monitoring and alerts for open-source vulnerabilities, including this one.

No, there is no known workaround for this vulnerability. It is crucial to update the Linux Kernel to the fixed version.

The fixed version of the Linux Kernel can be obtained from the official Linux Kernel repository at https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/.

Yes, you can wait for your Linux distribution to provide an updated package containing the fixed version of the Linux Kernel.

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