Description
In the Linux kernel, the following vulnerability has been resolved:

power: supply: wm97xx: Fix NULL pointer dereference in power_supply_changed()

In `probe()`, `request_irq()` is called before allocating/registering a
`power_supply` handle. If an interrupt is fired between the call to
`request_irq()` and `power_supply_register()`, the `power_supply` handle
will be used uninitialized in `power_supply_changed()` in
`wm97xx_bat_update()` (triggered from the interrupt handler). This will
lead to a `NULL` pointer dereference since

Fix this racy `NULL` pointer dereference by making sure the IRQ is
requested _after_ the registration of the `power_supply` handle. Since
the IRQ is the last thing requests in the `probe()` now, remove the
error path for freeing it. Instead add one for unregistering the
`power_supply` handle when IRQ request fails.
Published: 2026-05-27
Score: n/a
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A race condition in the wm97xx power‑supply driver occurs when an interrupt is delivered between the request for the IRQ and the registration of the power_supply handle. The driver then dereferences a NULL pointer inside power_supply_changed(), causing a kernel panic. The weakness is a classic NULL pointer dereference combined with a race condition.

Affected Systems

All Linux kernel releases that include the unpatched wm97xx driver are affected. The vendor is Linux kernel. Accordingly, every kernel version prior to the patch that contains this driver is within scope until the update is applied.

Risk and Exploitability

The CVSS score is not supplied, and the EPSS score is reported as less than 1%, indicating a very low probability of exploitation. The vulnerability is not listed in CISA’s KEV catalog. Based on the description, it is inferred that exploitation requires an interrupt to be generated between the request_irq() and power_supply_register() calls, which typically demands physical proximity or privileged access to trigger a hardware event. Because of this prerequisite, widespread exploitation is unlikely; however, any successful trigger results in a kernel crash that denies all services.

Generated by OpenCVE AI on May 28, 2026 at 16:08 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to a release that includes the patch for the wm97xx driver.
  • If a kernel update is not possible, unload or disable the wm97xx power‑supply driver to eliminate the race condition.
  • Continuously monitor system logs for kernel oops messages or power‑supply‑related errors that could indicate an attempted trigger.

Generated by OpenCVE AI on May 28, 2026 at 16:08 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4606-1 linux security update
History

Thu, 28 May 2026 14:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-409
CWE-476

Thu, 28 May 2026 12:15:00 +0000


Wed, 27 May 2026 21:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-409
CWE-476

Wed, 27 May 2026 14:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: power: supply: wm97xx: Fix NULL pointer dereference in power_supply_changed() In `probe()`, `request_irq()` is called before allocating/registering a `power_supply` handle. If an interrupt is fired between the call to `request_irq()` and `power_supply_register()`, the `power_supply` handle will be used uninitialized in `power_supply_changed()` in `wm97xx_bat_update()` (triggered from the interrupt handler). This will lead to a `NULL` pointer dereference since Fix this racy `NULL` pointer dereference by making sure the IRQ is requested _after_ the registration of the `power_supply` handle. Since the IRQ is the last thing requests in the `probe()` now, remove the error path for freeing it. Instead add one for unregistering the `power_supply` handle when IRQ request fails.
Title power: supply: wm97xx: Fix NULL pointer dereference in power_supply_changed()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-05-27T12:15:49.107Z

Reserved: 2026-05-13T15:03:33.080Z

Link: CVE-2026-45869

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-05-27T14:17:00.290

Modified: 2026-05-27T14:48:31.480

Link: CVE-2026-45869

cve-icon Redhat

Severity :

Publid Date: 2026-05-27T00:00:00Z

Links: CVE-2026-45869 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-05-28T16:15:04Z

Weaknesses