CVE-2026-89899
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
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 Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 490d84f6d73c12f4204241cff8651eed60aae914 < 9a951931d4b4084acd64fa55fc3672a9da45ddf9 | affected |
| Linux | Linux | 490d84f6d73c12f4204241cff8651eed60aae914 < a3adb63b121937b97f7fdc51e96564c7c799538b | affected |
| Linux | Linux | 490d84f6d73c12f4204241cff8651eed60aae914 < 9c6ceb0949227c1f0cf0e19393daec72d9889871 | affected |
| Linux | Linux | 490d84f6d73c12f4204241cff8651eed60aae914 < 0fbd5c2327020858c45b2d1c65775d64cdeca523 | affected |
| Linux | Linux | e448dfd6d3ec944411f6575bc24e4f8baa1e297f | affected |
| Linux | Linux | 2781b86d7e45de09befa5ace296b66787146561f | affected |
| Linux | Linux | 4.18.19 < 4.19 | affected |
| Linux | Linux | 4.19.2 < 4.20 | affected |
| Linux | Linux | 4.20 | affected |
| Linux | Linux | 0 < 4.20 | unaffected |
| Linux | Linux | 6.12.110 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.51 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.5 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/9a951931d4b4084acd64fa55fc3672a9da45ddf9
- https://git.kernel.org/stable/c/a3adb63b121937b97f7fdc51e96564c7c799538b
- https://git.kernel.org/stable/c/9c6ceb0949227c1f0cf0e19393daec72d9889871
- https://git.kernel.org/stable/c/0fbd5c2327020858c45b2d1c65775d64cdeca523
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.