mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
wifi: mt76: add missing locking to protect against concurrent rx/status calls
According to the documentation, ieee80211_rx_list must not run concurrently with ieee80211_tx_status (or its variants). Cc: [email protected] Fixes: 88046b2c9f6d ("mt76: add support for reporting tx status with skb") Reported-by: Brian Coverstone <[email protected]> Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
+4
-1
@@ -1279,8 +1279,11 @@ void mt7603_mac_add_txs(struct mt7603_dev *dev, void *data)
|
||||
if (wcidx >= MT7603_WTBL_STA || !sta)
|
||||
goto out;
|
||||
|
||||
if (mt7603_fill_txs(dev, msta, &info, txs_data))
|
||||
if (mt7603_fill_txs(dev, msta, &info, txs_data)) {
|
||||
spin_lock_bh(&dev->mt76.rx_lock);
|
||||
ieee80211_tx_status_noskb(mt76_hw(dev), sta, &info);
|
||||
spin_unlock_bh(&dev->mt76.rx_lock);
|
||||
}
|
||||
|
||||
out:
|
||||
rcu_read_unlock();
|
||||
|
||||
Reference in New Issue
Block a user