Impact
The Linux kernel’s charger‑manager module suffers a reference‑count leak in the is_full_charged() function. When the battery voltage reaches or exceeds the full‑charge threshold, the function returns without releasing its reference to the fuel_gauge power supply, incrementally raising the reference count. Over many function invocations the leaked references accumulate, consuming kernel memory and potentially causing a denial‑of‑service by exhausting system resources. This weakness corresponds to improper resource management (CWE‑401).
Affected Systems
All builds of the Linux kernel that include the charger‑manager module before the fix commit (identified in the kernel changelog by commit 193e6471e985c2f25d09b3fe96ec52f4eab89bd4). The bug is present in all upstream kernels that compile the affected code up to the point of the commit. Since the patch was merged into the mainline, any kernel version older than the commit is potentially vulnerable. The issue affects systems running any Linux distribution that ships the unpatched kernel, regardless of vendor.
Risk and Exploitability
The CVSS score for this issue is not disclosed, and no EPSS data is available, so the exploitation probability cannot be quantified. The flaw exists in kernel space and therefore requires kernel‑level privileges or the capability to trigger power events that invoke the function repeatedly. An attacker with such access could provoke the leak by supplying a battery that reports repeated full‑charge thresholds, allowing the reference count to grow until kernel memory is exhausted. The vulnerability is not currently listed in CISA’s KEV catalog, but its potential for local privilege escalation and resource exhaustion warrants prompt remediation.
OpenCVE Enrichment