Device Refcount Imbalance in Linux Kernel SCMI Drivers

linux Updated 02 Oct 2025

Summary

20/05/2025
N/A
Yes i
Unrated
Not published

CVE-2025-37905: In the Linux kernel, the following vulnerability has been resolved: firmware: arm_scmi: Balance device refcount when destroying devices Using device_find_child() to lookup the proper SCMI device to destroy causes an unba... Affects linux versions < 6.1.140-1. Fixed in 6.1.140-1. 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 Linux kernel is a core component of many operating systems, providing essential services for hardware and software interaction. It supports a wide range of hardware architectures and is known for its stability and performance. However, vulnerabilities can arise, such as the one affecting the SCMI (System Control and Management Interface) drivers, which manage communication between system components. This specific vulnerability leads to improper reference counting during device destruction, potentially causing memory leaks and resource mismanagement.

Vulnerability Detail

In the Linux kernel, a vulnerability has been identified where the use of device_find_child() to locate the appropriate SCMI device for destruction results in an unbalanced device reference count. This occurs because device_find_child() implicitly calls get_device(), preventing the execution of the release methods for devices upon destruction. Consequently, certain structures, such as the internal struct device_private dev->p, are not freed correctly, leading to memory leaks. KMemleak can detect this issue, as loading and unloading SCMI drivers creates and destroys related devices without invoking any device_release methods.

How To Fix

Minimum fixed version

6.1.140-1

This is the first release that contains the fix.

sudo apt-get install --only-upgrade linux

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

As a temporary workaround, you can avoid using the affected SCMI drivers until the patch is applied. Additionally, if you need to load the drivers, monitor the system for memory leaks and ensure that the devices are properly released after use.

Conclusion

The CVE-2025-37905 vulnerability in the Linux kernel highlights the importance of proper device reference counting in SCMI drivers. Users are encouraged to update their systems to mitigate the risk of memory leaks and ensure optimal performance. Utilizing tools like Vulert can help in monitoring vulnerabilities effectively.

See every vulnerability recorded for linux →

Share this vulnerability

FAQ

CVE-2025-37905 is a vulnerability in the Linux kernel related to improper device reference counting in SCMI drivers, leading to potential memory leaks.

You can use Vulert, which monitors and alerts for open-source vulnerabilities in your software. Visit Vulert Scanner to check if your application is affected without needing to sign up.

The main consequence is memory leaks due to unbalanced device reference counts, which can lead to resource exhaustion and degraded system performance.

Yes, a patch is available. Users should update their Linux package to the latest version that includes the fix for CVE-2025-37905.

If you cannot update immediately, consider avoiding the use of the affected SCMI drivers and monitor your system for any unusual behavior or memory issues.

Related vulnerabilities

Recent vulnerabilities recorded for linux.

How To Fix

Minimum fixed version

6.1.140-1

This is the first release that contains the fix.

sudo apt-get install --only-upgrade linux

Tip — Not sure which version your app runs? Vulert can match this fix to it. 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.