In the Linux kernel, the following vulnerability has been resolved:
wifi: ath11k: fix sleeping-in-atomic in ath11kmacopsetbitrate_mask()
ath11kmacdisablepeerfixedrate() is passed as the iterator to ieee80211iteratestationsatomic(). Note in this case the iterator is required to be atomic, however ath11kmacdisablepeerfixed_rate() does not follow it as it might sleep. Consequently below warning is seen:
BUG: sleeping function called from invalid context at wmi.c:304 Call Trace: <TASK> dumpstacklvl _mightresched.cold ath11kwmicmdsend ath11kwmisetpeerparam ath11kmacdisablepeerfixedrate ieee80211iteratestationsatomic ath11kmacopsetbitratemask.cold
Change to ieee80211iteratestations_mtx() to fix this issue.
Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPLV1V2SILICONZLITE-3.6510.30