diff --git a/drivers/net/wireless/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_rx_reorder.c b/drivers/net/wireless/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_rx_reorder.c index 3857550fe481..1b0b7812d298 100644 --- a/drivers/net/wireless/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_rx_reorder.c +++ b/drivers/net/wireless/qcacld-2.0/CORE/CLD_TXRX/TXRX/ol_rx_reorder.c @@ -549,6 +549,13 @@ ol_rx_delba_handler( struct ol_txrx_peer_t *peer; struct ol_rx_reorder_t *rx_reorder; + if (tid >= OL_TXRX_NUM_EXT_TIDS) { + TXRX_PRINT(TXRX_PRINT_LEVEL_ERR, + "%s: invalid tid, %u\n", __func__, tid); + WARN_ON(1); + return; + } + peer = ol_txrx_peer_find_by_id(pdev, peer_id); if (peer == NULL) { return; @@ -654,6 +661,13 @@ ol_rx_pn_ind_handler( u_int16_t seq_num; int i=0; + if (tid >= OL_TXRX_NUM_EXT_TIDS) { + TXRX_PRINT(TXRX_PRINT_LEVEL_ERR, + "%s: invalid tid, %u\n", __func__, tid); + WARN_ON(1); + return; + } + peer = ol_txrx_peer_find_by_id(pdev, peer_id); if (!peer) {