[dpdk-dev] [PATCH 3/5] net/i40e: fix dereference after null check coverity

Xiao Zhang xiao.zhang at intel.com
Sun Aug 4 23:00:28 CEST 2019


The address of receive queue start segment was not updated when found by
iterated checking, update the address to fix coverity issue.

Coverity issue: 343422
Coverity issue: 343403
Fixes: ca74903b ("net/i40e: extract non-x86 specific code from vector
driver")

Cc: stable at dpdk.org

Signed-off-by: Xiao Zhang <xiao.zhang at intel.com>
---
 drivers/net/i40e/i40e_rxtx_vec_avx2.c | 1 +
 drivers/net/i40e/i40e_rxtx_vec_sse.c  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/drivers/net/i40e/i40e_rxtx_vec_avx2.c b/drivers/net/i40e/i40e_rxtx_vec_avx2.c
index c4dc990..0cbb2c2 100644
--- a/drivers/net/i40e/i40e_rxtx_vec_avx2.c
+++ b/drivers/net/i40e/i40e_rxtx_vec_avx2.c
@@ -588,6 +588,7 @@ i40e_recv_scattered_burst_vec_avx2(void *rx_queue, struct rte_mbuf **rx_pkts,
 		/* find the first split flag, and only reassemble then*/
 		while (i < nb_bufs && !split_flags[i])
 			i++;
+		rxq->pkt_first_seg = rx_pkts[i];
 		if (i == nb_bufs)
 			return nb_bufs;
 	}
diff --git a/drivers/net/i40e/i40e_rxtx_vec_sse.c b/drivers/net/i40e/i40e_rxtx_vec_sse.c
index 3b22588..89ffc23 100644
--- a/drivers/net/i40e/i40e_rxtx_vec_sse.c
+++ b/drivers/net/i40e/i40e_rxtx_vec_sse.c
@@ -504,6 +504,7 @@ i40e_recv_scattered_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts,
 		/* find the first split flag, and only reassemble then*/
 		while (i < nb_bufs && !split_flags[i])
 			i++;
+		rxq->pkt_first_seg = rx_pkts[i];
 		if (i == nb_bufs)
 			return nb_bufs;
 	}
-- 
2.7.4



More information about the dev mailing list