mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-05 20:06:39 +07:00
mwl8k: fix NULL pointer dereference on receive out-of-memory
When we go into out-of-memory and fail to allocate skbuffs to refill the receive ring with, rxq_process can end up running into a receive ring entry that is marked as host-owned but doesn't have an associated skbuff. If this happens, we must break out of the rx processing loop instead of trying to process the descriptor. Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> Acked-by: Nicolas Pitre <nico@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
7dd2459d8f
commit
d25f9f1357
@ -1012,6 +1012,8 @@ static int rxq_process(struct ieee80211_hw *hw, int index, int limit)
|
||||
rmb();
|
||||
|
||||
skb = rxq->rx_skb[rxq->rx_head];
|
||||
if (skb == NULL)
|
||||
break;
|
||||
rxq->rx_skb[rxq->rx_head] = NULL;
|
||||
|
||||
rxq->rx_head = (rxq->rx_head + 1) % MWL8K_RX_DESCS;
|
||||
|
Loading…
Reference in New Issue
Block a user