patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Christian Ehrhardt <christian.ehrhardt@canonical.com>
To: Stanislaw Kardach <kda@semihalf.com>
Cc: David Hunt <david.hunt@intel.com>,
	Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>,
	dpdk stable <stable@dpdk.org>
Subject: [dpdk-stable] patch 'test/distributor: fix burst flush on worker quit' has been queued to stable release 19.11.9
Date: Mon, 17 May 2021 18:21:05 +0200	[thread overview]
Message-ID: <20210517162125.3178901-1-christian.ehrhardt@canonical.com> (raw)

Hi,

FYI, your patch has been queued to stable release 19.11.9

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

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/cpaelzer/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/cpaelzer/dpdk-stable-queue/commit/4157d0d7306fbd2fdd20a2654128aff02113a528

Thanks.

Christian Ehrhardt <christian.ehrhardt@canonical.com>

---
From 4157d0d7306fbd2fdd20a2654128aff02113a528 Mon Sep 17 00:00:00 2001
From: Stanislaw Kardach <kda@semihalf.com>
Date: Wed, 28 Apr 2021 16:25:53 +0200
Subject: [PATCH] test/distributor: fix burst flush on worker quit

[ upstream commit 6cda39af86ffc629732aac79058207cb4044e952 ]

While working on RISC-V port I have encountered a situation where worker
threads get stuck in the rte_distributor_return_pkt() function in the
burst test.
Investigation showed some of the threads enter this function with
flag RTE_DISTRIB_GET_BUF set in the d->retptr64[0]. At the same time the
main thread has already passed rte_distributor_process() so nobody will
clear this flag and hence workers can't return.

What I've noticed is that adding a flush just after the last _process(),
similarly to how quit_workers() function is written in the
test_distributor.c fixes the issue.
Lukasz Wojciechowski reproduced the same issue on x86 using a VM with 32
emulated CPU cores to force some lcores not to be woken up.

Fixes: 7c3287a10535 ("test/distributor: add performance test for burst mode")

Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
Acked-by: David Hunt <david.hunt@intel.com>
Tested-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
Reviewed-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
---
 app/test/test_distributor_perf.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app/test/test_distributor_perf.c b/app/test/test_distributor_perf.c
index 0f3c3d84c1..1f5db4c533 100644
--- a/app/test/test_distributor_perf.c
+++ b/app/test/test_distributor_perf.c
@@ -196,6 +196,7 @@ quit_workers(struct rte_distributor *d, struct rte_mempool *p)
 	rte_mempool_put_bulk(p, (void *)bufs, num_workers);
 
 	rte_distributor_process(d, NULL, 0);
+	rte_distributor_flush(d);
 	rte_eal_mp_wait_lcore();
 	quit = 0;
 	worker_idx = 0;
-- 
2.31.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2021-05-17 17:40:36.832215134 +0200
+++ 0190-test-distributor-fix-burst-flush-on-worker-quit.patch	2021-05-17 17:40:29.547812436 +0200
@@ -1 +1 @@
-From 6cda39af86ffc629732aac79058207cb4044e952 Mon Sep 17 00:00:00 2001
+From 4157d0d7306fbd2fdd20a2654128aff02113a528 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 6cda39af86ffc629732aac79058207cb4044e952 ]
+
@@ -21 +22,0 @@
-Cc: stable@dpdk.org
@@ -32 +33 @@
-index 371a14ba4c..fdbeae6d2f 100644
+index 0f3c3d84c1..1f5db4c533 100644

             reply	other threads:[~2021-05-17 16:21 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-17 16:21 Christian Ehrhardt [this message]
2021-05-17 16:21 ` [dpdk-stable] patch 'net/virtio: fix vectorized Rx queue rearm' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'net/bnxt: refactor multi-queue Rx configuration' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'net/bnxt: fix Rx timestamp when FIFO pending bit is set' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'net/bnxt: fix dynamic VNIC count' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'net/bnxt: fix single PF per port check' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'net/bnxt: fix mismatched type comparison in MAC restore' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'net/bnxt: check PCI config read' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'net/bnxt: prevent device access in error state' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'raw/ntb: check SPAD user index' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'raw/ntb: check memory allocations' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'ipc: check malloc sync reply result' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'eal: fix service core list parsing' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'app/bbdev: fix HARQ error messages' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'common/qat: increase IM buffer size for GEN3' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'compress/qat: enable compression on " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'test/crypto: fix auth-cipher compare length in OOP' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'crypto/dpaa_sec: affine the thread portal affinity' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'crypto/dpaa2_sec: fix close and uninit functions' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'test/crypto: copy offset data to OOP destination buffer' " Christian Ehrhardt
2021-05-17 16:21 ` [dpdk-stable] patch 'doc: fix build with Sphinx 4' " Christian Ehrhardt
  -- strict thread matches above, loose matches on Subject: below --
2021-05-17 16:07 [dpdk-stable] patch 'vfio: do not merge contiguous areas' " Christian Ehrhardt
2021-05-17 16:10 ` [dpdk-stable] patch 'test/distributor: fix burst flush on worker quit' " 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=20210517162125.3178901-1-christian.ehrhardt@canonical.com \
    --to=christian.ehrhardt@canonical.com \
    --cc=david.hunt@intel.com \
    --cc=kda@semihalf.com \
    --cc=l.wojciechow@partner.samsung.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).