From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruce Richardson Subject: [PATCH v2] ixgbe: fix check for split packets Date: Wed, 22 Jul 2015 10:13:30 +0100 Message-ID: <1437556410-14102-1-git-send-email-bruce.richardson@intel.com> References: <1437492307-29754-1-git-send-email-bruce.richardson@intel.com> To: dev@dpdk.org Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 6DB825921 for ; Wed, 22 Jul 2015 11:13:36 +0200 (CEST) In-Reply-To: <1437492307-29754-1-git-send-email-bruce.richardson@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The check for split packets to be reassembled in the vector ixgbe PMD was incorrectly only checking the first 16 elements of the array instead of all 32. This is fixed by changing the uint32_t values to be uint64_t instead. Fixes: cf4b4708a88a ("ixgbe: improve slow-path perf with vector scattered Rx") Reported-by: Zoltan Kiss Signed-off-by: Bruce Richardson --- V2: Rename variable from split_fl32 to split_fl64 to match type change. --- drivers/net/ixgbe/ixgbe_rxtx_vec.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/ixgbe/ixgbe_rxtx_vec.c b/drivers/net/ixgbe/ixgbe_rxtx_vec.c index d3ac74a..f2052c6 100644 --- a/drivers/net/ixgbe/ixgbe_rxtx_vec.c +++ b/drivers/net/ixgbe/ixgbe_rxtx_vec.c @@ -549,10 +549,10 @@ ixgbe_recv_scattered_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts, return 0; /* happy day case, full burst + no packets to be joined */ - const uint32_t *split_fl32 = (uint32_t *)split_flags; + const uint64_t *split_fl64 = (uint64_t *)split_flags; if (rxq->pkt_first_seg == NULL && - split_fl32[0] == 0 && split_fl32[1] == 0 && - split_fl32[2] == 0 && split_fl32[3] == 0) + split_fl64[0] == 0 && split_fl64[1] == 0 && + split_fl64[2] == 0 && split_fl64[3] == 0) return nb_bufs; /* reassemble any packets that need reassembly*/ -- 2.4.3