From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Kinzie Subject: [PATCH 1/2] ixgbe: vector rx rearm after queue reset Date: Thu, 25 Jun 2015 11:25:40 -0700 Message-ID: <1435256741-25489-2-git-send-email-ehkinzie@gmail.com> References: <1435256741-25489-1-git-send-email-ehkinzie@gmail.com> To: dev@dpdk.org Return-path: Received: from mail-pd0-f173.google.com (mail-pd0-f173.google.com [209.85.192.173]) by dpdk.org (Postfix) with ESMTP id 5E6F0C6CE for ; Thu, 25 Jun 2015 20:26:17 +0200 (CEST) Received: by pdcu2 with SMTP id u2so58416010pdc.3 for ; Thu, 25 Jun 2015 11:26:16 -0700 (PDT) In-Reply-To: <1435256741-25489-1-git-send-email-ehkinzie@gmail.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" zero values in ixgbe_reset_rx_queue() used by vector receive so that rearming the rx queue happens at the right time. Not doing so can in some cases result in the software inadvertently setting the card's rx tail pointer equal to the head pointer, which indicates that there are no descriptors available. This causes receive to stop indefinitely on that queue. Fixes: 01fa1d6215fa ("ixgbe: unify Rx setup") Signed-off-by: Eric Kinzie --- drivers/net/ixgbe/ixgbe_rxtx.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c index 3ace8a8..1e840b6 100644 --- a/drivers/net/ixgbe/ixgbe_rxtx.c +++ b/drivers/net/ixgbe/ixgbe_rxtx.c @@ -2261,6 +2261,10 @@ ixgbe_reset_rx_queue(struct ixgbe_adapter *adapter, struct ixgbe_rx_queue *rxq) rxq->nb_rx_hold = 0; rxq->pkt_first_seg = NULL; rxq->pkt_last_seg = NULL; +#ifdef RTE_IXGBE_INC_VECTOR + rxq->rxrearm_nb = 0; + rxq->rxrearm_start = 0; +#endif } int -- 1.7.10.4