]> git.droids-corp.org - dpdk.git/commitdiff
net/bnxt: fix crash by validating pointer
authorAjit Khaparde <ajit.khaparde@broadcom.com>
Tue, 4 Jan 2022 08:38:22 +0000 (14:08 +0530)
committerAjit Khaparde <ajit.khaparde@broadcom.com>
Wed, 12 Jan 2022 02:00:12 +0000 (03:00 +0100)
Validate the pointers in rxq before accessing them.
Otherwise it can cause a segfault.

Fixes: 657c2a7f1dd4 ("net/bnxt: create aggregation rings when needed")
Cc: stable@dpdk.org
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Reviewed-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com>
drivers/net/bnxt/bnxt_rxq.c

index 9f1d1d4dba6c2ce3920c4034c7c6493a7e0f496a..cd3bb1446f153d145c6ca2e29ef0c9615cf7a2de 100644 (file)
@@ -214,7 +214,9 @@ void bnxt_rx_queue_release_mbufs(struct bnxt_rx_queue *rxq)
                }
        }
        /* Free up mbufs in Agg ring */
-       if (!bnxt_need_agg_ring(rxq->bp->eth_dev))
+       if (rxq->bp == NULL ||
+           rxq->bp->eth_dev == NULL ||
+           !bnxt_need_agg_ring(rxq->bp->eth_dev))
                return;
 
        sw_ring = rxq->rx_ring->ag_buf_ring;