CVE-2026-89463

Summary

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

power: supply: ucs1002: fix use-after-free on remove

ucs1002 has no remove callback, so unbind runs entirely through devm. The alert IRQ handler queues the health_poll delayed work, and the work reschedules itself while the chip reports a bad-health condition. devm frees the alert IRQ, which only synchronizes the handler; it does not cancel the delayed work, which can then run after devm frees the driver data and dereference it.

Register health_poll with devm_delayed_work_autocancel() before the alert IRQ is requested. devm then frees the IRQ before cancelling the work, so the handler can no longer queue it and the work is cancelled before the driver data is freed.

This issue was found by an in-house static analysis tool.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux81196e2e57fc5b88f6b8ca98372a3dde047aa49d < 4ca2a4678202f15eb790eb7f1d562061709caea7affected
LinuxLinux81196e2e57fc5b88f6b8ca98372a3dde047aa49d < 39b60d615dfa1725c235351fb12bc72e5f8a8d32affected
LinuxLinux81196e2e57fc5b88f6b8ca98372a3dde047aa49d < 35242c93d35f391afdc84cef6236b8ad57f1df24affected
LinuxLinux81196e2e57fc5b88f6b8ca98372a3dde047aa49d < 609af0ceeaefdfa42cd01dd060b20f2e41f9a232affected
LinuxLinux5.10affected
LinuxLinux0 < 5.10unaffected
LinuxLinux6.12.109 <= 6.12.*unaffected
LinuxLinux6.18.50 <= 6.18.*unaffected
LinuxLinux7.2.4 <= 7.2.*unaffected
LinuxLinux7.3-rc1 <= *unaffected

Weaknesses

References