patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Christian Ehrhardt <christian.ehrhardt@canonical.com>
To: Harry van Haaren <harry.van.haaren@intel.com>
Cc: David Coyle <david.coyle@intel.com>,
	Brendan Ryan <brendan.ryan@intel.com>,
	dpdk stable <stable@dpdk.org>
Subject: [dpdk-stable] patch 'net/i40e: fix rearm check in AVX2 Rx' has been queued to stable release 18.05.1
Date: Tue, 14 Aug 2018 13:06:33 +0200	[thread overview]
Message-ID: <20180814110651.25277-30-christian.ehrhardt@canonical.com> (raw)
In-Reply-To: <20180814110651.25277-1-christian.ehrhardt@canonical.com>

Hi,

FYI, your patch has been queued to stable release 18.05.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/16/18. So please
shout if anyone has objections.

Thanks.

Christian Ehrhardt <christian.ehrhardt@canonical.com>

---
>From 430b9e8217ad4ea38450d6b31e0768e9c4ad5ed3 Mon Sep 17 00:00:00 2001
From: Harry van Haaren <harry.van.haaren@intel.com>
Date: Mon, 30 Jul 2018 18:34:19 +0100
Subject: [PATCH] net/i40e: fix rearm check in AVX2 Rx

[ upstream commit f5dd9a88dedd54fa89a25c9a10d39f3abe31e5c2 ]

This commit fixes an infinite loop bug that could occur
if the i40e AVX2 driver is used, and high traffic rates
cause the mempool from which the rxq pulls mbufs to become
empty.

The result would be an infinite loop of checking if we
should perform an rx rearm, calling the function and an
error return due the the mempool being emtpy.

The fix is to align the code in the AVX2 driver with the
SSE driver, where an if() is used instead of a while(),
allowing the thread to return from i40e rx function even
if the mempool is empty.

Fixes: dafadd73762e ("net/i40e: add AVX2 Rx function")

Reported-by: David Coyle <david.coyle@intel.com>
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Brendan Ryan <brendan.ryan@intel.com>
Tested-by: David Coyle <david.coyle@intel.com>
---
 drivers/net/i40e/i40e_rxtx_vec_avx2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/i40e/i40e_rxtx_vec_avx2.c b/drivers/net/i40e/i40e_rxtx_vec_avx2.c
index dbcb61f38..23179b3b8 100644
--- a/drivers/net/i40e/i40e_rxtx_vec_avx2.c
+++ b/drivers/net/i40e/i40e_rxtx_vec_avx2.c
@@ -188,7 +188,7 @@ _recv_raw_pkts_vec_avx2(struct i40e_rx_queue *rxq, struct rte_mbuf **rx_pkts,
 	/* See if we need to rearm the RX queue - gives the prefetch a bit
 	 * of time to act
 	 */
-	while (rxq->rxrearm_nb > RTE_I40E_RXQ_REARM_THRESH)
+	if (rxq->rxrearm_nb > RTE_I40E_RXQ_REARM_THRESH)
 		i40e_rxq_rearm(rxq);
 
 	/* Before we start moving massive data around, check to see if
-- 
2.17.1

  parent reply	other threads:[~2018-08-14 11:12 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-14 11:06 [dpdk-stable] patch 'test: fix result printing' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'test: fix code on report' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'test: make autotest runner python 2/3 compliant' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'test: print autotest categories' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'test: improve filtering' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'mk: update targets for classified tests' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'mk: remove unnecessary test rules' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'test: fix uninitialized port configuration' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'app/testpmd: fix DCB config' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'latency: free up the memzone' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/octeontx: fix stop clearing Rx/Tx functions' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bnxt: fix filter freeing' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bnxt: fix memory leaks in NVM commands' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bnxt: fix lock release on NVM write failure' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bnxt: check access denied for HWRM commands' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bnxt: fix RETA size' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/qede: fix interrupt handler unregister' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/qede/base: fix to clear HW indication' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/qede/base: fix GRC attention callback' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/qede: fix MAC address removal failure message' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bnx2x: fix FW command timeout during stop' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bnx2x: fix poll link status' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/dpaa2: remove loop for unused pool entries' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/mlx4: check RSS queues number limitation' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/mlx4: avoid stripping the glue library' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/mlx5: " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/mlx4: advertise Rx jumbo frame support' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/mlx5: fix secondary process resource leakage' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/i40e: fix device parameter parsing' " Christian Ehrhardt
2018-08-14 11:06 ` Christian Ehrhardt [this message]
2018-08-14 11:06 ` [dpdk-stable] patch 'net/i40e: revert fix of flow director check' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/avf: fix offload capabilities' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'vhost: flush IOTLB cache on new mem table handling' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/bonding: fix race condition' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/mlx5: preserve promiscuous flag for flow isolation mode' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/mlx5: preserve allmulticast " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'event: fix ring init failure handling' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'app/crypto-perf: fix auth IV offset' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'eal: fix bitmap documentation' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'examples/flow_filtering: add flow director config for i40e' " Christian Ehrhardt
2018-08-14 12:08   ` Xu, Rosen
2018-08-14 11:06 ` [dpdk-stable] patch 'hash: fix doxygen of return values' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/tap: fix zeroed flow mask configurations' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'net/qede: fix ntuple filter configuration' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'kni: fix crash with null name' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'kni: fix build on RHEL 7.5' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'ethdev: fix a doxygen comment for port allocation' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'mk: fix permissions when using make install' " Christian Ehrhardt
2018-08-14 11:06 ` [dpdk-stable] patch 'maintainers: claim maintainership for ARM v7 and v8' " Christian Ehrhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180814110651.25277-30-christian.ehrhardt@canonical.com \
    --to=christian.ehrhardt@canonical.com \
    --cc=brendan.ryan@intel.com \
    --cc=david.coyle@intel.com \
    --cc=harry.van.haaren@intel.com \
    --cc=stable@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).