patch 'crypto/cnxk: fix inflight count calculation' has been queued to stable release 21.11.1

Kevin Traynor ktraynor at redhat.com
Mon Feb 21 16:33:29 CET 2022


Hi,

FYI, your patch has been queued to stable release 21.11.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 02/26/22. 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/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/5977020bc34fc3619f7e6f89cfbfbb97ab83dce8

Thanks.

Kevin

---
>From 5977020bc34fc3619f7e6f89cfbfbb97ab83dce8 Mon Sep 17 00:00:00 2001
From: Anoob Joseph <anoobj at marvell.com>
Date: Fri, 17 Dec 2021 14:50:01 +0530
Subject: [PATCH] crypto/cnxk: fix inflight count calculation

[ upstream commit ec6ca0536e912d465a47d28ab90994d9ca576234 ]

Inflight count calculation is updated to cover wrap around cases where
head can become smaller than tail.

Fixes: fd390896f4a3 ("crypto/cnxk: allow different cores in pending queue")

Reported-by: Kiran Kumar K <kirankumark at marvell.com>
Signed-off-by: Anoob Joseph <anoobj at marvell.com>
Acked-by: Akhil Goyal <gakhil at marvell.com>
---
 drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/crypto/cnxk/cnxk_cryptodev_ops.h b/drivers/crypto/cnxk/cnxk_cryptodev_ops.h
index 0d363651ff..1d1b1fc94b 100644
--- a/drivers/crypto/cnxk/cnxk_cryptodev_ops.h
+++ b/drivers/crypto/cnxk/cnxk_cryptodev_ops.h
@@ -167,5 +167,9 @@ static __rte_always_inline uint64_t
 pending_queue_infl_cnt(uint64_t head, uint64_t tail, const uint64_t mask)
 {
-	return (head - tail) & mask;
+	/*
+	 * Mask is nb_desc - 1. Add nb_desc to head and mask to account for
+	 * cases when tail > head, which happens during wrap around.
+	 */
+	return ((head + mask + 1) - tail) & mask;
 }
 
-- 
2.34.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-21 15:22:45.101680112 +0000
+++ 0020-crypto-cnxk-fix-inflight-count-calculation.patch	2022-02-21 15:22:44.044704019 +0000
@@ -1 +1 @@
-From ec6ca0536e912d465a47d28ab90994d9ca576234 Mon Sep 17 00:00:00 2001
+From 5977020bc34fc3619f7e6f89cfbfbb97ab83dce8 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit ec6ca0536e912d465a47d28ab90994d9ca576234 ]
+
@@ -10 +11,0 @@
-Cc: stable at dpdk.org
@@ -20 +21 @@
-index ca363bba3a..0336ae102e 100644
+index 0d363651ff..1d1b1fc94b 100644
@@ -23 +24 @@
-@@ -157,5 +157,9 @@ static __rte_always_inline uint64_t
+@@ -167,5 +167,9 @@ static __rte_always_inline uint64_t



More information about the stable mailing list