What’s Vulnerable › Vulnerabilities
CVE-2026-89899: media: cec: disable delayed work before freeing an interrupted transmit
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-09-16 · updated 2026-10-19
Description
In the Linux kernel, the following vulnerability has been resolved: media: cec: disable delayed work before freeing an interrupted transmit cec_transmit_msg_fh() drops adap->lock to wait for a blocking transmit in wait_for_completion_killable(). If that wait is interrupted by a signal, cancel_delayed_work_sync() can run before the CEC kthread arms the reply timeout via schedule_delayed_work(&data->work) in cec_transmit_done_ts(). The work is then armed after the cancel, and the data is freed with its delayed_work still pending: ODEBUG: free active (active state 0) object: ... hint: cec_wait_timeout Use disable_delayed_work_sync(): it cancels the work and disables it, so the later schedule_delayed_work() becomes a no-op and the work cannot be re-armed. The data is freed right after, so it need not be re-enabled.
Affected products
- Linux kernel: from 4.18.19 before 4.19; from 4.19.2 before 4.20; 4.20 — fixed in 4.19, 4.20, 7.3
How to fix
Upgrade to a fixed version: Linux kernel 4.19, 4.20, 7.3. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/0fbd5c2327020858c45b2d1c65775d64cdeca523
- https://git.kernel.org/stable/c/9a951931d4b4084acd64fa55fc3672a9da45ddf9
- https://git.kernel.org/stable/c/9c6ceb0949227c1f0cf0e19393daec72d9889871
- https://git.kernel.org/stable/c/a3adb63b121937b97f7fdc51e96564c7c799538b
Get alerted when CVE-2026-89899 or the next vulnerability affects your stack