remove tail check to avoid last amsdu leak.
recycle skb in ppdu id wrap around case
Signed-off-by: Miles Hu <milehu@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
if (ath11k_dp_rx_mon_comp_ppduid(msdu_ppdu_id,
ppdu_id,
- &rx_bufs_used))
+ &rx_bufs_used)) {
+ if (rx_bufs_used) {
+ drop_mpdu = true;
+ dev_kfree_skb_any(msdu);
+ msdu = NULL;
+ goto next_msdu;
+ }
return rx_bufs_used;
+ }
pmon->mon_last_linkdesc_paddr = paddr;
is_first_msdu = false;
}
ath11k_dp_rx_deliver_msdu(ar, napi, mon_skb);
mon_skb = skb_next;
- } while (mon_skb && (mon_skb != tail_msdu));
+ } while (mon_skb);
rxs->flag = 0;
return 0;