mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-29 20:16:44 +07:00
carl9170: Fix memory accounting when sta is in power-save mode.
On Access Point mode, when transmitting a packet, if the destination station is in powersave mode, we abort transmitting the packet to the device queue, but we do not reclaim the allocated memory. Given enough packets, we can go in a state where there is no packet on the device queue, but we think the device has no memory left, so no packet gets transmitted, connections breaks and the AP stops working. This undo the allocation done in the TX path when the station is in power-save mode. Signed-off-by: Nicolas Cavallari <cavallar@lri.fr> Acked-by: Christian Lamparter <chunkeey@googlemail.com> Cc: stable <stable@vger.kernel.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
2b0a53d51b
commit
992d52529d
@ -1251,6 +1251,7 @@ static bool carl9170_tx_ps_drop(struct ar9170 *ar, struct sk_buff *skb)
|
|||||||
atomic_dec(&ar->tx_ampdu_upload);
|
atomic_dec(&ar->tx_ampdu_upload);
|
||||||
|
|
||||||
tx_info->flags |= IEEE80211_TX_STAT_TX_FILTERED;
|
tx_info->flags |= IEEE80211_TX_STAT_TX_FILTERED;
|
||||||
|
carl9170_release_dev_space(ar, skb);
|
||||||
carl9170_tx_status(ar, skb, false);
|
carl9170_tx_status(ar, skb, false);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user