Description
In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: fix deadlock in remain-on-channel mt76_remain_on_channel() and mt76_roc_complete() call mt76_set_channel() while already holding dev->mutex. Since mt76_set_channel() also acquires dev->mutex, this results in a deadlock. Use __mt76_set_channel() instead of mt76_set_channel(). Add cancel_delayed_work_sync() for mac_work before acquiring the mutex in mt76_remain_on_channel() to prevent a secondary deadlock with the mac_work workqueue.
Affected products
- Linux / Linuxa8f424c1287cc79a06c21816658feea87dfcb83f – 5fc8c5d45e44575dda9fcabdc2aac4ad97baf0cd
- Linux / Linuxa8f424c1287cc79a06c21816658feea87dfcb83f – 7a89c245d203aa0ed5ff2d68ac05b48b2ef9fa3f
- Linux / Linuxa8f424c1287cc79a06c21816658feea87dfcb83f – 6939b97ddad3cf3dfbb3b5a0a12ef79cb886747e
- Linux / Linux6.14 – 6.14
- Linux / Linux0 – 6.14
- Linux / Linux6.18.33 – 6.18.*
- Linux / Linux7.0.10 – 7.0.*
- Linux / Linux7.1 – *