Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: media: mtk-jpeg: cancel workqueue on release for supported platforms only Since a recent fix the mtk_jpeg_release function cancels any pending or running work present in the driver workqueue using cancel_work_sync function. Currently, only the multicore based variants use this workqueue and they have the jpeg_worker platform data field initialized with a workqueue callback function. For the others, this field value remain NULL by default. The cancel_work_sync function is unconditionally called in mtk_jpeg_release function, even for the variants that do not use the workqueue. This call generates a WARN_ON print in __flush_work because the workqueue callback function presence check fails in __flush_work function (used by cancel_work_sync). So, to avoid these warnings, call cancel_work_sync only if a workqueue callback is defined in platform data.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 2209fdae5c2f615930c9af1379c1cfca199ec5d8 before 0fed0fc34ce734b4b8c2f6a467d38bddcb21dda9; affected 0498b27a1542021d90269d58347501d4c3ccd84e before ac0774961a6ea174a71d4ffa39966edafbf7662d; affected 26506a30e0e26d612f82a7bf0e395626968a44e6 before 973408ceab14555a8548b97c8cc7b54208c3f251; affected 34c519feef3e4fcff1078dc8bdb25fbbbd10303f before 4c4b4af4a9f278da096f0dbdb6b59594701d29bf; affected 34c519feef3e4fcff1078dc8bdb25fbbbd10303f before b1845a227fda37b2fe5327df3ca0015d7e290235; affected e78c39f720679fcf3a2eacd82725ec3ea2648301; affected 6.6.140 before 6.6.145; affected 6.12.86 before 6.12.96; affected 6.18.27 before 6.18.39; affected 7.0.4 before 7.1 |
| Linux / Linux | affected 7.1; unaffected 0 before 7.1; unaffected 6.6.145 through 6.6.*; unaffected 6.12.96 through 6.12.*; unaffected 6.18.39 through 6.18.*; unaffected 7.1.4 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/0fed0fc34ce734b4b8c2f6a467d38bddcb21dda9
- https://git.kernel.org/stable/c/ac0774961a6ea174a71d4ffa39966edafbf7662d
- https://git.kernel.org/stable/c/973408ceab14555a8548b97c8cc7b54208c3f251
- https://git.kernel.org/stable/c/4c4b4af4a9f278da096f0dbdb6b59594701d29bf
- https://git.kernel.org/stable/c/b1845a227fda37b2fe5327df3ca0015d7e290235