CVEvulnerability
CVE-2026-89468
- Status
- Received
- Published
- 2026-09-11
- Last modified
- 2026-10-21
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
power: supply: lp8788-charger: fix use-after-free on remove
lp8788_charger_remove() flushes charger_work before unregistering the
IRQs. An IRQ thread can queue charger_work after flush_work() has
returned. The work can then run after devres frees pchg and dereference
it in lp8788_charger_event().
Unregister the IRQs first. free_irq() waits for any running threaded
handler, so no handler can queue more work afterwards. Then use
cancel_work_sync() to cancel pending work or wait for running work to
finish.
This issue was found by an in-house static analysis tool.
References
- https://git.kernel.org/stable/c/4e3d3923976a986cc3cf960d13f1264cea8a9bba git.kernel.org
- https://git.kernel.org/stable/c/831c29a12d560f8a3225f43050b3fbb5dfd79c66 git.kernel.org
- https://git.kernel.org/stable/c/88d8eadfad5d9ff967e74090152940bcfa27df69 git.kernel.org
- https://git.kernel.org/stable/c/b3aa1e9509e1b0a863353356d617fb45d1b6250a git.kernel.org
- https://git.kernel.org/stable/c/b4eb6a056b441ba0caedfbfc42cec501acf12f67 git.kernel.org