CVE-2026-45869

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

State
Published
Severity
Not scored
Published
May 27, 2026
Updated
May 27, 2026
Reserved
May 13, 2026

Read the record on cve.org

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.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before 3d7b5391bb95505b3581c1fb77150c467ab92864Affected
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before 438f9a303ea8b55162b2d5376490c2ab3ec165a0Affected
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before 9b7d77cb046b4487e8e511e04e62b6f416ce845cAffected
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before 86183153c299e8bb1839e717286d6c6f39508a59Affected
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before 93bdf715d33cf5ee01c58e8546c2469c71ce082aAffected
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before c0def811ad8d642dca9b6d31a198cc39f5f90837Affected
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before dfaf235d5a6b60cbf115a14a656946303ad007b7Affected
  • 7c87942aef52d2120e95ff1dec739998b9f95a78 to before 39fe0eac6d755ef215026518985fcf8de9360e9eAffected
LinuxLinux
  • 2.6.32Affected
  • before 2.6.32Not affected
  • 5.10.252 through 5.10.*Not affected
  • 5.15.202 through 5.15.*Not affected
  • 6.1.165 through 6.1.*Not affected
  • 6.6.128 through 6.6.*Not affected
  • 6.12.75 through 6.12.*Not affected
  • 6.18.14 through 6.18.*Not affected
  • 6.19.4 through 6.19.*Not affected
  • 7.0 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.