patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10
@ 2020-07-17 16:31 Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'app/testpmd: fix memory leak on error path' " Kevin Traynor
                   ` (24 more replies)
  0 siblings, 25 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/59257aaaa12da7c8ec6419cf19ad72acd9dae907

Thanks.

Kevin.

---
From 59257aaaa12da7c8ec6419cf19ad72acd9dae907 Mon Sep 17 00:00:00 2001
From: Stephen Hemminger <stephen@networkplumber.org>
Date: Tue, 19 May 2020 09:52:30 -0700
Subject: [PATCH] net/netvsc: do not spin forever waiting for reply

[ upstream commit 3c9be81be917e1659a3a9ab332c277280986ed03 ]

Because of bugs in driver or host a reply to a request might
never occur. Better to give an error than spin forever.

Fixes: 4e9c73e96e83 ("net/netvsc: add Hyper-V network device")

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 drivers/net/netvsc/hn_rndis.c | 30 ++++++++++++++++++++++++++++--
 1 file changed, 28 insertions(+), 2 deletions(-)

diff --git a/drivers/net/netvsc/hn_rndis.c b/drivers/net/netvsc/hn_rndis.c
index 0134ecb67e..cb85ffe40d 100644
--- a/drivers/net/netvsc/hn_rndis.c
+++ b/drivers/net/netvsc/hn_rndis.c
@@ -11,4 +11,5 @@
 #include <errno.h>
 #include <unistd.h>
+#include <time.h>
 
 #include <rte_ethdev_driver.h>
@@ -34,4 +35,7 @@
 #include "ndis.h"
 
+#define RNDIS_TIMEOUT_SEC 5
+#define RNDIS_DELAY_MS    10
+
 #define HN_RNDIS_XFER_SIZE		0x4000
 
@@ -349,5 +353,5 @@ void hn_rndis_receive_response(struct hn_data *hv,
 
 	if (rte_atomic32_cmpset(&hv->rndis_pending, hdr->rid, 0) == 0) {
-		PMD_DRV_LOG(ERR,
+		PMD_DRV_LOG(NOTICE,
 			    "received id %#x pending id %#x",
 			    hdr->rid, (uint32_t)hv->rndis_pending);
@@ -372,4 +376,9 @@ static int hn_rndis_exec1(struct hn_data *hv,
 	}
 
+	if (rid == 0) {
+		PMD_DRV_LOG(ERR, "Invalid request id");
+		return -EINVAL;
+	}
+
 	if (comp != NULL &&
 	    rte_atomic32_cmpset(&hv->rndis_pending, 0, rid) == 0) {
@@ -386,7 +395,24 @@ static int hn_rndis_exec1(struct hn_data *hv,
 
 	if (comp) {
+		time_t start = time(NULL);
+
 		/* Poll primary channel until response received */
-		while (hv->rndis_pending == rid)
+		while (hv->rndis_pending == rid) {
+			if (hv->closed)
+				return -ENETDOWN;
+
+			if (time(NULL) - start > RNDIS_TIMEOUT_SEC) {
+				PMD_DRV_LOG(ERR,
+					    "RNDIS response timed out");
+
+				rte_atomic32_cmpset(&hv->rndis_pending, rid, 0);
+				return -ETIMEDOUT;
+			}
+
+			if (rte_vmbus_chan_rx_empty(hv->primary->chan))
+				rte_delay_ms(RNDIS_DELAY_MS);
+
 			hn_process_events(hv, 0, 1);
+		}
 
 		memcpy(comp, hv->rndis_resp, comp_len);
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.054805173 +0100
+++ 0001-net-netvsc-do-not-spin-forever-waiting-for-reply.patch	2020-07-17 17:16:59.949772090 +0100
@@ -1 +1 @@
-From 3c9be81be917e1659a3a9ab332c277280986ed03 Mon Sep 17 00:00:00 2001
+From 59257aaaa12da7c8ec6419cf19ad72acd9dae907 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 3c9be81be917e1659a3a9ab332c277280986ed03 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -18 +19 @@
-index 6a850ce5f2..d186ddeabd 100644
+index 0134ecb67e..cb85ffe40d 100644
@@ -27 +28 @@
-@@ -35,4 +36,7 @@
+@@ -34,4 +35,7 @@
@@ -35 +36 @@
-@@ -355,5 +359,5 @@ void hn_rndis_receive_response(struct hn_data *hv,
+@@ -349,5 +353,5 @@ void hn_rndis_receive_response(struct hn_data *hv,
@@ -42 +43 @@
-@@ -378,4 +382,9 @@ static int hn_rndis_exec1(struct hn_data *hv,
+@@ -372,4 +376,9 @@ static int hn_rndis_exec1(struct hn_data *hv,
@@ -52 +53 @@
-@@ -392,7 +401,24 @@ static int hn_rndis_exec1(struct hn_data *hv,
+@@ -386,7 +395,24 @@ static int hn_rndis_exec1(struct hn_data *hv,


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'app/testpmd: fix memory leak on error path' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/mlx5: fix unreachable MPLS " Kevin Traynor
                   ` (23 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Yunjian Wang; +Cc: Ferruh Yigit, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From e4e0055a641f1799dadcf77aadab0de4ffc1d617 Mon Sep 17 00:00:00 2001
From: Yunjian Wang <wangyunjian@huawei.com>
Date: Mon, 25 May 2020 09:46:23 +0800
Subject: [PATCH] app/testpmd: fix memory leak on error path

[ upstream commit eb577e575d160eae08bcd9b7acf8a9d8fe795f89 ]

This patch fixes the resource leak issue.

Fixes: e63b50162aa3 ("app/testpmd: clean metering and policing commands")

Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 app/test-pmd/cmdline_mtr.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/app/test-pmd/cmdline_mtr.c b/app/test-pmd/cmdline_mtr.c
index c506d87ee5..cebaae0e99 100644
--- a/app/test-pmd/cmdline_mtr.c
+++ b/app/test-pmd/cmdline_mtr.c
@@ -1263,4 +1263,5 @@ static void cmd_set_port_meter_policer_action_parsed(void *parsed_result,
 		action_mask, actions, &error);
 	if (ret != 0) {
+		free(actions);
 		print_err_msg(&error);
 		return;
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.106888499 +0100
+++ 0002-app-testpmd-fix-memory-leak-on-error-path.patch	2020-07-17 17:16:59.951772047 +0100
@@ -1 +1 @@
-From eb577e575d160eae08bcd9b7acf8a9d8fe795f89 Mon Sep 17 00:00:00 2001
+From e4e0055a641f1799dadcf77aadab0de4ffc1d617 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit eb577e575d160eae08bcd9b7acf8a9d8fe795f89 ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org
@@ -18 +19 @@
-index caa7e98644..ee16244de7 100644
+index c506d87ee5..cebaae0e99 100644


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/mlx5: fix unreachable MPLS error path' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'app/testpmd: fix memory leak on error path' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/failsafe: fix RSS RETA size info' " Kevin Traynor
                   ` (22 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Michael Baum; +Cc: Matan Azrad, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From b05ad22ad0e0147637336afe6f5617795e7079bf Mon Sep 17 00:00:00 2001
From: Michael Baum <michaelba@mellanox.com>
Date: Wed, 27 May 2020 08:37:57 +0000
Subject: [PATCH] net/mlx5: fix unreachable MPLS error path

[ upstream commit 01de93f2451730d480db8db18921e1bca7cb1f3e ]

The mlx5_flow_validate_item_mpls function checks MPLS item validation.
It first checks if the device supports MPLS, it is done using the ifdef
condition that if it fails to skip to endif and return the appropriate
error.

When MPLS is supported, the preprocessor will copy the body of the
function ending with return 0 followed by the lines that report MPLS
support.
In fact, these lines are unreachable because before them the function
returns 0 and in any case they are unnecessary.

Replace the endif by else and move endif to the end of the
function.

Fixes: 23c1d42c7138 ("net/mlx5: split flow validation to dedicated function")

Signed-off-by: Michael Baum <michaelba@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
---
 drivers/net/mlx5/mlx5_flow.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
index 30d5b66e64..0350d72efd 100644
--- a/drivers/net/mlx5/mlx5_flow.c
+++ b/drivers/net/mlx5/mlx5_flow.c
@@ -1672,9 +1672,10 @@ mlx5_flow_validate_item_mpls(struct rte_eth_dev *dev __rte_unused,
 		return ret;
 	return 0;
-#endif
+#else
 	return rte_flow_error_set(error, ENOTSUP,
 				  RTE_FLOW_ERROR_TYPE_ITEM, item,
 				  "MPLS is not supported by Verbs, please"
 				  " update.");
+#endif
 }
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.161670040 +0100
+++ 0003-net-mlx5-fix-unreachable-MPLS-error-path.patch	2020-07-17 17:16:59.955771961 +0100
@@ -1 +1 @@
-From 01de93f2451730d480db8db18921e1bca7cb1f3e Mon Sep 17 00:00:00 2001
+From b05ad22ad0e0147637336afe6f5617795e7079bf Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 01de93f2451730d480db8db18921e1bca7cb1f3e ]
+
@@ -21 +22,0 @@
-Cc: stable@dpdk.org
@@ -30 +31 @@
-index ae478a510a..f2c3cf90d4 100644
+index 30d5b66e64..0350d72efd 100644
@@ -33 +34 @@
-@@ -2270,9 +2270,10 @@ mlx5_flow_validate_item_mpls(struct rte_eth_dev *dev __rte_unused,
+@@ -1672,9 +1672,10 @@ mlx5_flow_validate_item_mpls(struct rte_eth_dev *dev __rte_unused,


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/failsafe: fix RSS RETA size info' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'app/testpmd: fix memory leak on error path' " Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/mlx5: fix unreachable MPLS " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/i40e: enable NEON Rx/Tx in meson' " Kevin Traynor
                   ` (21 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Ian Dolzhansky
  Cc: Andrew Rybchenko, Gaetan Rivet, Stephen Hemminger, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/0e1d54296a6b14b7c458be93a4724de5c610052a

Thanks.

Kevin.

---
From 0e1d54296a6b14b7c458be93a4724de5c610052a Mon Sep 17 00:00:00 2001
From: Ian Dolzhansky <ian.dolzhansky@oktetlabs.ru>
Date: Wed, 27 May 2020 15:34:33 +0100
Subject: [PATCH] net/failsafe: fix RSS RETA size info

[ upstream commit 6e8bdf7266db71f43f47f40704ab1122f60c3f17 ]

Failsafe driver has been indicating zero for RSS redirection table size
after device info reporting had been reworked. Report proper value.

Fixes: 4586be3743d4 ("net/failsafe: fix reported device info")

Signed-off-by: Ian Dolzhansky <ian.dolzhansky@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Gaetan Rivet <grive@u256.net>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
---
 drivers/net/failsafe/failsafe_ops.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/net/failsafe/failsafe_ops.c b/drivers/net/failsafe/failsafe_ops.c
index a3c30c25a9..07043dbbce 100644
--- a/drivers/net/failsafe/failsafe_ops.c
+++ b/drivers/net/failsafe/failsafe_ops.c
@@ -828,4 +828,11 @@ fs_dev_merge_info(struct rte_eth_dev_info *info,
 	info->tx_queue_offload_capa &= sinfo->tx_queue_offload_capa;
 	info->flow_type_rss_offloads &= sinfo->flow_type_rss_offloads;
+
+	/*
+	 * RETA size is a GCD of RETA sizes indicated by sub-devices.
+	 * Each of these sizes is a power of 2, so use the lower one.
+	 */
+	info->reta_size = RTE_MIN(info->reta_size, sinfo->reta_size);
+
 	info->hash_key_size = RTE_MIN(info->hash_key_size,
 				      sinfo->hash_key_size);
@@ -878,4 +885,5 @@ fs_dev_infos_get(struct rte_eth_dev *dev,
 	infos->max_vfs = UINT16_MAX;
 	infos->max_vmdq_pools = UINT16_MAX;
+	infos->reta_size = UINT16_MAX;
 	infos->hash_key_size = UINT8_MAX;
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.224112925 +0100
+++ 0004-net-failsafe-fix-RSS-RETA-size-info.patch	2020-07-17 17:16:59.958771897 +0100
@@ -1 +1 @@
-From 6e8bdf7266db71f43f47f40704ab1122f60c3f17 Mon Sep 17 00:00:00 2001
+From 0e1d54296a6b14b7c458be93a4724de5c610052a Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 6e8bdf7266db71f43f47f40704ab1122f60c3f17 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index e1d08e46c8..96f7e456f9 100644
+index a3c30c25a9..07043dbbce 100644
@@ -24 +25 @@
-@@ -1069,4 +1069,11 @@ fs_dev_merge_info(struct rte_eth_dev_info *info,
+@@ -828,4 +828,11 @@ fs_dev_merge_info(struct rte_eth_dev_info *info,
@@ -36 +37 @@
-@@ -1120,4 +1127,5 @@ fs_dev_infos_get(struct rte_eth_dev *dev,
+@@ -878,4 +885,5 @@ fs_dev_infos_get(struct rte_eth_dev *dev,


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/i40e: enable NEON Rx/Tx in meson' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (2 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/failsafe: fix RSS RETA size info' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/cxgbe: fix CLIP leak in filter error path' " Kevin Traynor
                   ` (20 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Ruifeng Wang
  Cc: David Marchand, Honnappa Nagarahalli, Phil Yang,
	Bruce Richardson, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/0c1534c1fce6a9afa8372540d5268af26a536c1d

Thanks.

Kevin.

---
From 0c1534c1fce6a9afa8372540d5268af26a536c1d Mon Sep 17 00:00:00 2001
From: Ruifeng Wang <ruifeng.wang@arm.com>
Date: Fri, 5 Jun 2020 13:20:55 +0800
Subject: [PATCH] net/i40e: enable NEON Rx/Tx in meson

[ upstream commit 83ea3b5fa09152da5033f64164f7487296f21f64 ]

The i40e neon vector implementation is not compiled with meson.
Add the file to meson for Arm platform.

Fixes: e940646b20fa ("drivers/net: build Intel NIC PMDs with meson")

Reported-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
---
 drivers/net/i40e/meson.build | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build
index d783f36265..58b5766860 100644
--- a/drivers/net/i40e/meson.build
+++ b/drivers/net/i40e/meson.build
@@ -46,4 +46,7 @@ if arch_subdir == 'x86'
 		objs += i40e_avx2_lib.extract_objects('i40e_rxtx_vec_avx2.c')
 	endif
+elif arch_subdir == 'arm'
+       dpdk_conf.set('RTE_LIBRTE_I40E_INC_VECTOR', 1)
+       sources += files('i40e_rxtx_vec_neon.c')
 endif
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.277129414 +0100
+++ 0005-net-i40e-enable-NEON-Rx-Tx-in-meson.patch	2020-07-17 17:16:59.959771875 +0100
@@ -1 +1 @@
-From 83ea3b5fa09152da5033f64164f7487296f21f64 Mon Sep 17 00:00:00 2001
+From 0c1534c1fce6a9afa8372540d5268af26a536c1d Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 83ea3b5fa09152da5033f64164f7487296f21f64 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -22 +23 @@
-index c452420ee5..211d45d886 100644
+index d783f36265..58b5766860 100644
@@ -25,3 +26,3 @@
-@@ -48,4 +48,7 @@ elif arch_subdir == 'ppc'
-        dpdk_conf.set('RTE_LIBRTE_I40E_INC_VECTOR', 1)
-        sources += files('i40e_rxtx_vec_altivec.c')
+@@ -46,4 +46,7 @@ if arch_subdir == 'x86'
+ 		objs += i40e_avx2_lib.extract_objects('i40e_rxtx_vec_avx2.c')
+ 	endif


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/cxgbe: fix CLIP leak in filter error path' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (3 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/i40e: enable NEON Rx/Tx in meson' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'bpf: fix add/sub min/max estimations' " Kevin Traynor
                   ` (19 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Rahul Lakkireddy; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From d2cff2bc6e489fc26b7f1aca87d768d7d7fc58b3 Mon Sep 17 00:00:00 2001
From: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Date: Sat, 13 Jun 2020 03:37:23 +0530
Subject: [PATCH] net/cxgbe: fix CLIP leak in filter error path

[ upstream commit 844b21299f1a10ac350528365dc761e2934512ee ]

Free up Compressed Local IP (CLIP) entry properly during filter
creation failure path. Also consolidate all various tables
cleanup to a common function and invoke it from both wild-card
and exact-match filter paths.

Fixes: af44a577988b ("net/cxgbe: support to offload flows to HASH region")

Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
---
 drivers/net/cxgbe/cxgbe_filter.c | 68 +++++++++++++++-----------------
 1 file changed, 31 insertions(+), 37 deletions(-)

diff --git a/drivers/net/cxgbe/cxgbe_filter.c b/drivers/net/cxgbe/cxgbe_filter.c
index 8cd26212f8..489c23249c 100644
--- a/drivers/net/cxgbe/cxgbe_filter.c
+++ b/drivers/net/cxgbe/cxgbe_filter.c
@@ -268,4 +268,20 @@ int cxgbe_alloc_ftid(struct adapter *adap, u8 nentries)
 }
 
+/**
+ * Clear a filter and release any of its resources that we own.  This also
+ * clears the filter's "pending" status.
+ */
+static void clear_filter(struct filter_entry *f)
+{
+	if (f->clipt)
+		cxgbe_clip_release(f->dev, f->clipt);
+
+	/* The zeroing of the filter rule below clears the filter valid,
+	 * pending, locked flags etc. so it's all we need for
+	 * this operation.
+	 */
+	memset(f, 0, sizeof(*f));
+}
+
 /**
  * Construct hash filter ntuple.
@@ -551,5 +567,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
 	f = t4_os_alloc(sizeof(*f));
 	if (!f)
-		goto out_err;
+		return -ENOMEM;
 
 	f->fs = *fs;
@@ -588,5 +604,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
 		if (!mbuf) {
 			ret = -ENOMEM;
-			goto free_clip;
+			goto free_atid;
 		}
 
@@ -618,31 +634,13 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
 	return 0;
 
-free_clip:
-	cxgbe_clip_release(f->dev, f->clipt);
 free_atid:
 	cxgbe_free_atid(t, atid);
 
 out_err:
+	clear_filter(f);
 	t4_os_free(f);
 	return ret;
 }
 
-/**
- * Clear a filter and release any of its resources that we own.  This also
- * clears the filter's "pending" status.
- */
-static void clear_filter(struct filter_entry *f)
-{
-	if (f->clipt)
-		cxgbe_clip_release(f->dev, f->clipt);
-
-	/*
-	 * The zeroing of the filter rule below clears the filter valid,
-	 * pending, locked flags etc. so it's all we need for
-	 * this operation.
-	 */
-	memset(f, 0, sizeof(*f));
-}
-
 /**
  * t4_mk_filtdelwr - create a delete filter WR
@@ -998,14 +996,4 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned int filter_id,
 	}
 
-	/*
-	 * Allocate a clip table entry only if we have non-zero IPv6 address
-	 */
-	if (chip_ver > CHELSIO_T5 && fs->type &&
-	    memcmp(fs->val.lip, bitoff, sizeof(bitoff))) {
-		f->clipt = cxgbe_clip_alloc(dev, (u32 *)&fs->val.lip);
-		if (!f->clipt)
-			goto free_tid;
-	}
-
 	/*
 	 * Convert the filter specification into our internal format.
@@ -1018,4 +1006,14 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned int filter_id,
 	f->dev = dev;
 
+	/* Allocate a clip table entry only if we have non-zero IPv6 address. */
+	if (chip_ver > CHELSIO_T5 && f->fs.type &&
+	    memcmp(f->fs.val.lip, bitoff, sizeof(bitoff))) {
+		f->clipt = cxgbe_clip_alloc(dev, (u32 *)&f->fs.val.lip);
+		if (!f->clipt) {
+			ret = -ENOMEM;
+			goto free_tid;
+		}
+	}
+
 	/*
 	 * Attempt to set the filter.  If we don't succeed, we clear
@@ -1098,4 +1096,5 @@ void cxgbe_hash_filter_rpl(struct adapter *adap,
 
 		cxgbe_free_atid(t, ftid);
+		clear_filter(f);
 		t4_os_free(f);
 	}
@@ -1273,11 +1272,6 @@ void cxgbe_hash_del_filter_rpl(struct adapter *adap,
 
 	ctx = f->ctx;
-	f->ctx = NULL;
-
-	f->valid = 0;
-
-	if (f->clipt)
-		cxgbe_clip_release(f->dev, f->clipt);
 
+	clear_filter(f);
 	cxgbe_remove_tid(t, 0, tid, 0);
 	t4_os_free(f);
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.330522875 +0100
+++ 0006-net-cxgbe-fix-CLIP-leak-in-filter-error-path.patch	2020-07-17 17:16:59.961771832 +0100
@@ -1 +1 @@
-From 844b21299f1a10ac350528365dc761e2934512ee Mon Sep 17 00:00:00 2001
+From d2cff2bc6e489fc26b7f1aca87d768d7d7fc58b3 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 844b21299f1a10ac350528365dc761e2934512ee ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index 27e96c73e6..45602d468d 100644
+index 8cd26212f8..489c23249c 100644
@@ -23 +24 @@
-@@ -285,4 +285,20 @@ int cxgbe_alloc_ftid(struct adapter *adap, u8 nentries)
+@@ -268,4 +268,20 @@ int cxgbe_alloc_ftid(struct adapter *adap, u8 nentries)
@@ -44 +45 @@
-@@ -584,5 +600,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
+@@ -551,5 +567,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
@@ -51 +52 @@
-@@ -632,5 +648,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
+@@ -588,5 +604,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
@@ -58 +59 @@
-@@ -662,31 +678,13 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
+@@ -618,31 +634,13 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *dev,
@@ -91 +92 @@
-@@ -1071,14 +1069,4 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned int filter_id,
+@@ -998,14 +996,4 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned int filter_id,
@@ -106 +107 @@
-@@ -1091,4 +1079,14 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned int filter_id,
+@@ -1018,4 +1006,14 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned int filter_id,
@@ -119,3 +120,3 @@
- 	iconf = adapter->params.tp.ingress_config;
- 
-@@ -1193,4 +1191,5 @@ void cxgbe_hash_filter_rpl(struct adapter *adap,
+ 	/*
+ 	 * Attempt to set the filter.  If we don't succeed, we clear
+@@ -1098,4 +1096,5 @@ void cxgbe_hash_filter_rpl(struct adapter *adap,
@@ -127 +128 @@
-@@ -1417,11 +1416,6 @@ void cxgbe_hash_del_filter_rpl(struct adapter *adap,
+@@ -1273,11 +1272,6 @@ void cxgbe_hash_del_filter_rpl(struct adapter *adap,


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'bpf: fix add/sub min/max estimations' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (4 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'net/cxgbe: fix CLIP leak in filter error path' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'net: fix IPv4 checksum' " Kevin Traynor
                   ` (18 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Konstantin Ananyev; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/79ef320b85481100714bfe88fe6acf820d0e1253

Thanks.

Kevin.

---
From 79ef320b85481100714bfe88fe6acf820d0e1253 Mon Sep 17 00:00:00 2001
From: Konstantin Ananyev <konstantin.ananyev@intel.com>
Date: Wed, 27 May 2020 15:16:50 +0100
Subject: [PATCH] bpf: fix add/sub min/max estimations

[ upstream commit 20c19d9df5f08840d96204dcc65437223c434325 ]

eval_add()/eval_sub() not always correctly estimate
minimum and maximum possible values of add/sub operations.

Fixes: 8021917293d0 ("bpf: add extra validation for input BPF program")

Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
---
 lib/librte_bpf/bpf_validate.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/lib/librte_bpf/bpf_validate.c b/lib/librte_bpf/bpf_validate.c
index 0cf41fa27c..f92c514614 100644
--- a/lib/librte_bpf/bpf_validate.c
+++ b/lib/librte_bpf/bpf_validate.c
@@ -225,5 +225,5 @@ eval_add(struct bpf_reg_val *rd, const struct bpf_reg_val *rs, uint64_t msk)
 
 	rv.u.min = (rd->u.min + rs->u.min) & msk;
-	rv.u.max = (rd->u.min + rs->u.max) & msk;
+	rv.u.max = (rd->u.max + rs->u.max) & msk;
 	rv.s.min = (rd->s.min + rs->s.min) & msk;
 	rv.s.max = (rd->s.max + rs->s.max) & msk;
@@ -253,8 +253,8 @@ eval_sub(struct bpf_reg_val *rd, const struct bpf_reg_val *rs, uint64_t msk)
 	struct bpf_reg_val rv;
 
-	rv.u.min = (rd->u.min - rs->u.min) & msk;
-	rv.u.max = (rd->u.min - rs->u.max) & msk;
-	rv.s.min = (rd->s.min - rs->s.min) & msk;
-	rv.s.max = (rd->s.max - rs->s.max) & msk;
+	rv.u.min = (rd->u.min - rs->u.max) & msk;
+	rv.u.max = (rd->u.max - rs->u.min) & msk;
+	rv.s.min = (rd->s.min - rs->s.max) & msk;
+	rv.s.max = (rd->s.max - rs->s.min) & msk;
 
 	/*
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.388237990 +0100
+++ 0007-bpf-fix-add-sub-min-max-estimations.patch	2020-07-17 17:16:59.963771790 +0100
@@ -1 +1 @@
-From 20c19d9df5f08840d96204dcc65437223c434325 Mon Sep 17 00:00:00 2001
+From 79ef320b85481100714bfe88fe6acf820d0e1253 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 20c19d9df5f08840d96204dcc65437223c434325 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -18 +19 @@
-index 6bd6f78e9b..80d21fabbe 100644
+index 0cf41fa27c..f92c514614 100644
@@ -21 +22 @@
-@@ -227,5 +227,5 @@ eval_add(struct bpf_reg_val *rd, const struct bpf_reg_val *rs, uint64_t msk)
+@@ -225,5 +225,5 @@ eval_add(struct bpf_reg_val *rd, const struct bpf_reg_val *rs, uint64_t msk)
@@ -28 +29 @@
-@@ -255,8 +255,8 @@ eval_sub(struct bpf_reg_val *rd, const struct bpf_reg_val *rs, uint64_t msk)
+@@ -253,8 +253,8 @@ eval_sub(struct bpf_reg_val *rd, const struct bpf_reg_val *rs, uint64_t msk)


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net: fix IPv4 checksum' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (5 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'bpf: fix add/sub min/max estimations' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'examples: add flush after stats printing' " Kevin Traynor
                   ` (17 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Hongzhi Guo; +Cc: Morten Brørup, Olivier Matz, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From e0b3cc68e52cfa4d9ddabc7737ab2404d109d1df Mon Sep 17 00:00:00 2001
From: Hongzhi Guo <guohongzhi1@huawei.com>
Date: Tue, 26 May 2020 18:08:05 +0800
Subject: [PATCH] net: fix IPv4 checksum
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

[ upstream commit 06602c671a5ee23f517456424b216b2427c4334c ]

0xffff is invalid for IPv4 checksum (RFC1624)

Fixes: 6006818cfb26 ("net: new checksum functions")

Signed-off-by: Hongzhi Guo <guohongzhi1@huawei.com>
Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
---
 lib/librte_net/rte_ip.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_net/rte_ip.h b/lib/librte_net/rte_ip.h
index 7639164c2e..2c78ba6cf6 100644
--- a/lib/librte_net/rte_ip.h
+++ b/lib/librte_net/rte_ip.h
@@ -260,5 +260,5 @@ rte_ipv4_cksum(const struct ipv4_hdr *ipv4_hdr)
 	uint16_t cksum;
 	cksum = rte_raw_cksum(ipv4_hdr, sizeof(struct ipv4_hdr));
-	return (cksum == 0xffff) ? cksum : (uint16_t)~cksum;
+	return (uint16_t)~cksum;
 }
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.441604102 +0100
+++ 0008-net-fix-IPv4-checksum.patch	2020-07-17 17:16:59.964771768 +0100
@@ -1 +1 @@
-From 06602c671a5ee23f517456424b216b2427c4334c Mon Sep 17 00:00:00 2001
+From e0b3cc68e52cfa4d9ddabc7737ab2404d109d1df Mon Sep 17 00:00:00 2001
@@ -8,0 +9,2 @@
+[ upstream commit 06602c671a5ee23f517456424b216b2427c4334c ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -22 +23 @@
-index 4c4437a547..292f63fd74 100644
+index 7639164c2e..2c78ba6cf6 100644
@@ -25 +26 @@
-@@ -268,5 +268,5 @@ rte_ipv4_cksum(const struct rte_ipv4_hdr *ipv4_hdr)
+@@ -260,5 +260,5 @@ rte_ipv4_cksum(const struct ipv4_hdr *ipv4_hdr)
@@ -27 +28 @@
- 	cksum = rte_raw_cksum(ipv4_hdr, sizeof(struct rte_ipv4_hdr));
+ 	cksum = rte_raw_cksum(ipv4_hdr, sizeof(struct ipv4_hdr));


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'examples: add flush after stats printing' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (6 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'net: fix IPv4 checksum' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'bus/vmbus: fix ring buffer mapping' " Kevin Traynor
                   ` (16 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Georgiy Levashov; +Cc: Andrew Rybchenko, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/7fe033b767c3cfd3bacf2664253b69afbc2d884c

Thanks.

Kevin.

---
From 7fe033b767c3cfd3bacf2664253b69afbc2d884c Mon Sep 17 00:00:00 2001
From: Georgiy Levashov <georgiy.levashov@oktetlabs.ru>
Date: Tue, 28 Apr 2020 14:27:41 +0100
Subject: [PATCH] examples: add flush after stats printing

[ upstream commit 3ee6f706519c0a7456f3d8a79048150dfa6d2581 ]

When printf()'s stdout is line-buffered for terminal, it is fully
buffered for pipes. So, stdout listener can only get the output
when it is flushed (on program termination, when buffer is filled or
manual flush).

stdout buffer might fill slowly since every stats report could be small.

Also when it is fully filled it might contain a part of the last stats
report which makes it very inconvenient for any automation which reads
and parses the output.

Fixes: af75078fece3 ("first public release")

Signed-off-by: Georgiy Levashov <georgiy.levashov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
---
 examples/bbdev_app/main.c             | 2 ++
 examples/kni/main.c                   | 2 ++
 examples/l2fwd-crypto/main.c          | 2 ++
 examples/l2fwd-jobstats/main.c        | 3 +++
 examples/l2fwd-keepalive/main.c       | 2 ++
 examples/l2fwd/main.c                 | 2 ++
 examples/link_status_interrupt/main.c | 2 ++
 examples/tep_termination/main.c       | 2 ++
 examples/vhost/main.c                 | 2 ++
 9 files changed, 19 insertions(+)

diff --git a/examples/bbdev_app/main.c b/examples/bbdev_app/main.c
index d68c06aefb..c81dfb6e19 100644
--- a/examples/bbdev_app/main.c
+++ b/examples/bbdev_app/main.c
@@ -642,4 +642,6 @@ print_stats(struct stats_lcore_params *stats_lcore)
 	}
 
+	fflush(stdout);
+
 	free(xstats);
 	free(xstats_names);
diff --git a/examples/kni/main.c b/examples/kni/main.c
index 54bd69491b..6f15741747 100644
--- a/examples/kni/main.c
+++ b/examples/kni/main.c
@@ -159,4 +159,6 @@ print_stats(void)
 	}
 	printf("======  ==============  ============  ============  ============  ============\n");
+
+	fflush(stdout);
 }
 
diff --git a/examples/l2fwd-crypto/main.c b/examples/l2fwd-crypto/main.c
index 2d79327875..36a0002c42 100644
--- a/examples/l2fwd-crypto/main.c
+++ b/examples/l2fwd-crypto/main.c
@@ -328,4 +328,6 @@ print_stats(void)
 		   total_packets_errors);
 	printf("\n====================================================\n");
+
+	fflush(stdout);
 }
 
diff --git a/examples/l2fwd-jobstats/main.c b/examples/l2fwd-jobstats/main.c
index 8443f685d3..39c73b9679 100644
--- a/examples/l2fwd-jobstats/main.c
+++ b/examples/l2fwd-jobstats/main.c
@@ -330,4 +330,7 @@ show_stats_cb(__rte_unused void *param)
 
 	printf("\n====================================================\n");
+
+	fflush(stdout);
+
 	rte_eal_alarm_set(timer_period * US_PER_S, show_stats_cb, NULL);
 }
diff --git a/examples/l2fwd-keepalive/main.c b/examples/l2fwd-keepalive/main.c
index e74eb1f53e..53fffda6af 100644
--- a/examples/l2fwd-keepalive/main.c
+++ b/examples/l2fwd-keepalive/main.c
@@ -161,4 +161,6 @@ print_stats(__attribute__((unused)) struct rte_timer *ptr_timer,
 		   total_packets_dropped);
 	printf("\n====================================================\n");
+
+	fflush(stdout);
 }
 
diff --git a/examples/l2fwd/main.c b/examples/l2fwd/main.c
index 6ddf94b005..72f9fab5bc 100644
--- a/examples/l2fwd/main.c
+++ b/examples/l2fwd/main.c
@@ -147,4 +147,6 @@ print_stats(void)
 		   total_packets_dropped);
 	printf("\n====================================================\n");
+
+	fflush(stdout);
 }
 
diff --git a/examples/link_status_interrupt/main.c b/examples/link_status_interrupt/main.c
index 17e77427a9..97bc4a2d21 100644
--- a/examples/link_status_interrupt/main.c
+++ b/examples/link_status_interrupt/main.c
@@ -159,4 +159,6 @@ print_stats(void)
 		   total_packets_dropped);
 	printf("\n====================================================\n");
+
+	fflush(stdout);
 }
 
diff --git a/examples/tep_termination/main.c b/examples/tep_termination/main.c
index 6db604ed8b..72216a81ce 100644
--- a/examples/tep_termination/main.c
+++ b/examples/tep_termination/main.c
@@ -1111,4 +1111,6 @@ print_stats(__rte_unused void *arg)
 		}
 		printf("\n================================================\n");
+
+		fflush(stdout);
 	}
 
diff --git a/examples/vhost/main.c b/examples/vhost/main.c
index 2261f089f9..f2fa074f21 100644
--- a/examples/vhost/main.c
+++ b/examples/vhost/main.c
@@ -1334,4 +1334,6 @@ print_stats(__rte_unused void *arg)
 
 		printf("===================================================\n");
+
+		fflush(stdout);
 	}
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.495898763 +0100
+++ 0009-examples-add-flush-after-stats-printing.patch	2020-07-17 17:16:59.977771489 +0100
@@ -1 +1 @@
-From 3ee6f706519c0a7456f3d8a79048150dfa6d2581 Mon Sep 17 00:00:00 2001
+From 7fe033b767c3cfd3bacf2664253b69afbc2d884c Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 3ee6f706519c0a7456f3d8a79048150dfa6d2581 ]
+
@@ -18 +19,0 @@
-Cc: stable@dpdk.org
@@ -24 +24,0 @@
- examples/ioat/ioatfwd.c               | 2 ++
@@ -27 +26,0 @@
- examples/l2fwd-event/main.c           | 2 ++
@@ -34 +33 @@
- 11 files changed, 23 insertions(+)
+ 9 files changed, 19 insertions(+)
@@ -37 +36 @@
-index fb38dc3a72..68a46050c0 100644
+index d68c06aefb..c81dfb6e19 100644
@@ -40 +39 @@
-@@ -660,4 +660,6 @@ print_stats(struct stats_lcore_params *stats_lcore)
+@@ -642,4 +642,6 @@ print_stats(struct stats_lcore_params *stats_lcore)
@@ -47,11 +45,0 @@
-diff --git a/examples/ioat/ioatfwd.c b/examples/ioat/ioatfwd.c
-index 53de231795..b66ee73bce 100644
---- a/examples/ioat/ioatfwd.c
-+++ b/examples/ioat/ioatfwd.c
-@@ -295,4 +295,6 @@ print_stats(char *prgname)
- 		print_total_stats(&delta_ts);
- 
-+		fflush(stdout);
-+
- 		ts.total_packets_tx += delta_ts.total_packets_tx;
- 		ts.total_packets_rx += delta_ts.total_packets_rx;
@@ -59 +47 @@
-index 80dd0353e7..f5d12a5b86 100644
+index 54bd69491b..6f15741747 100644
@@ -70 +58 @@
-index fcb55c370a..827da9b3e3 100644
+index 2d79327875..36a0002c42 100644
@@ -73 +61 @@
-@@ -335,4 +335,6 @@ print_stats(void)
+@@ -328,4 +328,6 @@ print_stats(void)
@@ -80,11 +67,0 @@
-diff --git a/examples/l2fwd-event/main.c b/examples/l2fwd-event/main.c
-index 9593ef11e3..4fe500333c 100644
---- a/examples/l2fwd-event/main.c
-+++ b/examples/l2fwd-event/main.c
-@@ -517,4 +517,6 @@ print_stats(struct l2fwd_resources *rsrc)
- 		   total_packets_dropped);
- 	printf("\n====================================================\n");
-+
-+	fflush(stdout);
- }
- 
@@ -92 +69 @@
-index 396fd89db4..47a3b09765 100644
+index 8443f685d3..39c73b9679 100644
@@ -104 +81 @@
-index b7585d55e1..b2742633bc 100644
+index e74eb1f53e..53fffda6af 100644
@@ -107 +84 @@
-@@ -161,4 +161,6 @@ print_stats(__rte_unused struct rte_timer *ptr_timer,
+@@ -161,4 +161,6 @@ print_stats(__attribute__((unused)) struct rte_timer *ptr_timer,
@@ -115 +92 @@
-index f8d14b843a..4a41aac638 100644
+index 6ddf94b005..72f9fab5bc 100644
@@ -126 +103 @@
-index 25efe2b09a..9bbcadfcf8 100644
+index 17e77427a9..97bc4a2d21 100644
@@ -129 +106 @@
-@@ -163,4 +163,6 @@ print_stats(void)
+@@ -159,4 +159,6 @@ print_stats(void)
@@ -137 +114 @@
-index ab956ad7ce..b9fffca020 100644
+index 6db604ed8b..72216a81ce 100644
@@ -148 +125 @@
-index ab649bf147..312829e8b9 100644
+index 2261f089f9..f2fa074f21 100644
@@ -151 +128 @@
-@@ -1335,4 +1335,6 @@ print_stats(__rte_unused void *arg)
+@@ -1334,4 +1334,6 @@ print_stats(__rte_unused void *arg)


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'bus/vmbus: fix ring buffer mapping' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (7 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'examples: add flush after stats printing' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:31 ` [dpdk-stable] patch 'pci: fix address domain format size' " Kevin Traynor
                   ` (15 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Long Li; +Cc: Stephen Hemminger, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From fca3fc1aebc3dc92eb14f74eeb0c9227775ad391 Mon Sep 17 00:00:00 2001
From: Long Li <longli@microsoft.com>
Date: Thu, 11 Jun 2020 17:48:25 -0700
Subject: [PATCH] bus/vmbus: fix ring buffer mapping

[ upstream commit 1aef0aef3615d8b8d9d82cbb2d42afc2ae2bce7f ]

vmbus_map_addr is used as the next start virtual address for mapping ring
buffer. However it's updated based on ring_buf, which is a pointer to an
address on the stack. The next ring buffer may be mapped to an unexpected
address.

Fix this by calculating vmbus_map_addr based on returned virtual address.

Fixes: 3f9277031a2e ("bus/vmbus: fix check for mmap failure")

Signed-off-by: Long Li <longli@microsoft.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
---
 drivers/bus/vmbus/linux/vmbus_uio.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/bus/vmbus/linux/vmbus_uio.c b/drivers/bus/vmbus/linux/vmbus_uio.c
index 308ba00893..97ad3ebf9f 100644
--- a/drivers/bus/vmbus/linux/vmbus_uio.c
+++ b/drivers/bus/vmbus/linux/vmbus_uio.c
@@ -244,5 +244,5 @@ static int vmbus_uio_map_subchan(const struct rte_vmbus_device *dev,
 	*ring_buf = mapaddr;
 
-	vmbus_map_addr = RTE_PTR_ADD(ring_buf, file_size);
+	vmbus_map_addr = RTE_PTR_ADD(mapaddr, file_size);
 	return 0;
 }
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.563732243 +0100
+++ 0010-bus-vmbus-fix-ring-buffer-mapping.patch	2020-07-17 17:16:59.977771489 +0100
@@ -1 +1 @@
-From 1aef0aef3615d8b8d9d82cbb2d42afc2ae2bce7f Mon Sep 17 00:00:00 2001
+From fca3fc1aebc3dc92eb14f74eeb0c9227775ad391 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 1aef0aef3615d8b8d9d82cbb2d42afc2ae2bce7f ]
+
@@ -14 +15,0 @@
-Cc: stable@dpdk.org
@@ -23 +24 @@
-index 5451bfd150..5dc0c47de6 100644
+index 308ba00893..97ad3ebf9f 100644
@@ -26 +27 @@
-@@ -243,5 +243,5 @@ static int vmbus_uio_map_subchan(const struct rte_vmbus_device *dev,
+@@ -244,5 +244,5 @@ static int vmbus_uio_map_subchan(const struct rte_vmbus_device *dev,


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'pci: fix address domain format size' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (8 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'bus/vmbus: fix ring buffer mapping' " Kevin Traynor
@ 2020-07-17 16:31 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/qede: fix multicast drop in promiscuous mode' " Kevin Traynor
                   ` (14 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:31 UTC (permalink / raw)
  To: Tal Shnaiderman; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From e19516315d5d070801a868f98381151d0a96bc29 Mon Sep 17 00:00:00 2001
From: Tal Shnaiderman <talshn@mellanox.com>
Date: Mon, 29 Jun 2020 15:37:36 +0300
Subject: [PATCH] pci: fix address domain format size

[ upstream commit 8517072c8715556968b59e5872f580c7cad2e53c ]

the struct rte_pci_addr defines domain as uint32_t variable however
the PCI_PRI_FMT macro used for logging the struct sets the format
of domain to uint16_t.

The mismatch causes the following warning messages
in Windows clang build:

format specifies type 'unsigned short' but the argument
has type 'uint32_t' (aka 'unsigned int') [-Wformat]

Fixes: af75078fece3 ("first public release")

Signed-off-by: Tal Shnaiderman <talshn@mellanox.com>
---
 lib/librte_pci/rte_pci.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_pci/rte_pci.h b/lib/librte_pci/rte_pci.h
index eaa9d072cc..c8fd61f773 100644
--- a/lib/librte_pci/rte_pci.h
+++ b/lib/librte_pci/rte_pci.h
@@ -29,5 +29,5 @@ extern "C" {
 
 /** Formatting string for PCI device identifier: Ex: 0000:00:01.0 */
-#define PCI_PRI_FMT "%.4" PRIx16 ":%.2" PRIx8 ":%.2" PRIx8 ".%" PRIx8
+#define PCI_PRI_FMT "%.4" PRIx32 ":%.2" PRIx8 ":%.2" PRIx8 ".%" PRIx8
 #define PCI_PRI_STR_SIZE sizeof("XXXXXXXX:XX:XX.X")
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.614522666 +0100
+++ 0011-pci-fix-address-domain-format-size.patch	2020-07-17 17:16:59.978771468 +0100
@@ -1 +1 @@
-From 8517072c8715556968b59e5872f580c7cad2e53c Mon Sep 17 00:00:00 2001
+From e19516315d5d070801a868f98381151d0a96bc29 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 8517072c8715556968b59e5872f580c7cad2e53c ]
+
@@ -17 +18,0 @@
-Cc: stable@dpdk.org
@@ -25 +26 @@
-index 9337079178..104b2bb858 100644
+index eaa9d072cc..c8fd61f773 100644
@@ -28 +29 @@
-@@ -24,5 +24,5 @@ extern "C" {
+@@ -29,5 +29,5 @@ extern "C" {


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/qede: fix multicast drop in promiscuous mode' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (9 preceding siblings ...)
  2020-07-17 16:31 ` [dpdk-stable] patch 'pci: fix address domain format size' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/mvpp2: fix non-EAL thread support' " Kevin Traynor
                   ` (13 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Devendra Singh Rawat; +Cc: Igor Russkikh, Rasesh Mody, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/28f6adea3e06277ccc370be61372a88cecf6f284

Thanks.

Kevin.

---
From 28f6adea3e06277ccc370be61372a88cecf6f284 Mon Sep 17 00:00:00 2001
From: Devendra Singh Rawat <dsinghrawat@marvell.com>
Date: Thu, 18 Jun 2020 13:45:55 +0530
Subject: [PATCH] net/qede: fix multicast drop in promiscuous mode

[ upstream commit b10231aed1edb9cdd74a0a021a38267255952f00 ]

After enabling promiscuous mode all packets whose destination MAC
address is a multicast address were being dropped. This fix configures
H/W to receive all traffic in promiscuous mode. Promiscuous mode also
overrides allmulticast mode on/off status.

Fixes: 40e9f6fc1558 ("net/qede: enable VF-VF traffic with unmatched dest address")

Signed-off-by: Devendra Singh Rawat <dsinghrawat@marvell.com>
Signed-off-by: Igor Russkikh <irusskikh@marvell.com>
Signed-off-by: Rasesh Mody <rmody@marvell.com>
---
 drivers/net/qede/qede_ethdev.c | 23 ++++++++---------------
 1 file changed, 8 insertions(+), 15 deletions(-)

diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index b4a266444b..e279c0280e 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -536,15 +536,14 @@ qed_configure_filter_rx_mode(struct rte_eth_dev *eth_dev,
 
 	if (type == QED_FILTER_RX_MODE_TYPE_PROMISC) {
-		flags.rx_accept_filter |= ECORE_ACCEPT_UCAST_UNMATCHED;
+		flags.rx_accept_filter |= (ECORE_ACCEPT_UCAST_UNMATCHED |
+					   ECORE_ACCEPT_MCAST_UNMATCHED);
 		if (IS_VF(edev)) {
-			flags.tx_accept_filter |= ECORE_ACCEPT_UCAST_UNMATCHED;
-			DP_INFO(edev, "Enabling Tx unmatched flag for VF\n");
+			flags.tx_accept_filter |=
+						(ECORE_ACCEPT_UCAST_UNMATCHED |
+						 ECORE_ACCEPT_MCAST_UNMATCHED);
+			DP_INFO(edev, "Enabling Tx unmatched flags for VF\n");
 		}
 	} else if (type == QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC) {
 		flags.rx_accept_filter |= ECORE_ACCEPT_MCAST_UNMATCHED;
-	} else if (type == (QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC |
-				QED_FILTER_RX_MODE_TYPE_PROMISC)) {
-		flags.rx_accept_filter |= ECORE_ACCEPT_UCAST_UNMATCHED |
-			ECORE_ACCEPT_MCAST_UNMATCHED;
 	}
 
@@ -1397,13 +1396,10 @@ qede_link_update(struct rte_eth_dev *eth_dev, __rte_unused int wait_to_complete)
 static void qede_promiscuous_enable(struct rte_eth_dev *eth_dev)
 {
-	struct qede_dev *qdev = eth_dev->data->dev_private;
-	struct ecore_dev *edev = &qdev->edev;
+	struct qede_dev *qdev = QEDE_INIT_QDEV(eth_dev);
+	struct ecore_dev *edev = QEDE_INIT_EDEV(qdev);
 	enum qed_filter_rx_mode_type type = QED_FILTER_RX_MODE_TYPE_PROMISC;
 
 	PMD_INIT_FUNC_TRACE(edev);
 
-	if (rte_eth_allmulticast_get(eth_dev->data->port_id) == 1)
-		type |= QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC;
-
 	qed_configure_filter_rx_mode(eth_dev, type);
 }
@@ -1769,7 +1765,4 @@ static void qede_allmulticast_enable(struct rte_eth_dev *eth_dev)
 	    QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC;
 
-	if (rte_eth_promiscuous_get(eth_dev->data->port_id) == 1)
-		type |= QED_FILTER_RX_MODE_TYPE_PROMISC;
-
 	qed_configure_filter_rx_mode(eth_dev, type);
 }
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.666248258 +0100
+++ 0012-net-qede-fix-multicast-drop-in-promiscuous-mode.patch	2020-07-17 17:16:59.982771382 +0100
@@ -1 +1 @@
-From b10231aed1edb9cdd74a0a021a38267255952f00 Mon Sep 17 00:00:00 2001
+From 28f6adea3e06277ccc370be61372a88cecf6f284 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit b10231aed1edb9cdd74a0a021a38267255952f00 ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -18,2 +19,2 @@
- drivers/net/qede/qede_ethdev.c | 25 +++++++++----------------
- 1 file changed, 9 insertions(+), 16 deletions(-)
+ drivers/net/qede/qede_ethdev.c | 23 ++++++++---------------
+ 1 file changed, 8 insertions(+), 15 deletions(-)
@@ -22 +23 @@
-index c4f8f12589..84d2d2c033 100644
+index b4a266444b..e279c0280e 100644
@@ -25 +26 @@
-@@ -626,15 +626,14 @@ qed_configure_filter_rx_mode(struct rte_eth_dev *eth_dev,
+@@ -536,15 +536,14 @@ qed_configure_filter_rx_mode(struct rte_eth_dev *eth_dev,
@@ -47,2 +48,2 @@
-@@ -1503,14 +1502,11 @@ qede_link_update(struct rte_eth_dev *eth_dev, __rte_unused int wait_to_complete)
- static int qede_promiscuous_enable(struct rte_eth_dev *eth_dev)
+@@ -1397,13 +1396,10 @@ qede_link_update(struct rte_eth_dev *eth_dev, __rte_unused int wait_to_complete)
+ static void qede_promiscuous_enable(struct rte_eth_dev *eth_dev)
@@ -52 +52,0 @@
-+	enum _ecore_status_t ecore_status;
@@ -56 +55,0 @@
--	enum _ecore_status_t ecore_status;
@@ -63,4 +62,4 @@
- 	ecore_status = qed_configure_filter_rx_mode(eth_dev, type);
- 
-@@ -1886,7 +1882,4 @@ static int qede_allmulticast_enable(struct rte_eth_dev *eth_dev)
- 	enum _ecore_status_t ecore_status;
+ 	qed_configure_filter_rx_mode(eth_dev, type);
+ }
+@@ -1769,7 +1765,4 @@ static void qede_allmulticast_enable(struct rte_eth_dev *eth_dev)
+ 	    QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC;
@@ -71,2 +70,2 @@
- 	ecore_status = qed_configure_filter_rx_mode(eth_dev, type);
- 
+ 	qed_configure_filter_rx_mode(eth_dev, type);
+ }


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/mvpp2: fix non-EAL thread support' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (10 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/qede: fix multicast drop in promiscuous mode' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'eal/arm: add vcopyq intrinsic for aarch32' " Kevin Traynor
                   ` (12 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: David Marchand; +Cc: Liron Himi, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/978be5abe162b5ebe1be3eb0d74fdfeedbbaa9bc

Thanks.

Kevin.

---
From 978be5abe162b5ebe1be3eb0d74fdfeedbbaa9bc Mon Sep 17 00:00:00 2001
From: David Marchand <david.marchand@redhat.com>
Date: Tue, 16 Jun 2020 11:47:00 +0200
Subject: [PATCH] net/mvpp2: fix non-EAL thread support

[ upstream commit b52d25ae4b1bbe9adba0d9276b7771ec27e3d151 ]

Caught by code inspection, for a non-EAL thread identified with
rte_lcore_id() == LCORE_ID_ANY, the code currently arbitrarily uses
lcore 0 while there is no guarantee this lcore is used.

Fixes: 3588aaa68eab ("net/mrvl: fix HIF objects allocation")

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Liron Himi <lironh@marvell.com>
---
 drivers/net/mvpp2/mrvl_ethdev.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/mvpp2/mrvl_ethdev.c b/drivers/net/mvpp2/mrvl_ethdev.c
index ab4c14e513..97842fba76 100644
--- a/drivers/net/mvpp2/mrvl_ethdev.c
+++ b/drivers/net/mvpp2/mrvl_ethdev.c
@@ -813,5 +813,5 @@ mrvl_flush_bpool(struct rte_eth_dev *dev)
 
 	if (core_id == LCORE_ID_ANY)
-		core_id = 0;
+		core_id = rte_get_master_lcore();
 
 	hif = mrvl_get_hif(priv, core_id);
@@ -1565,5 +1565,5 @@ mrvl_fill_bpool(struct mrvl_rxq *rxq, int num)
 	core_id = rte_lcore_id();
 	if (core_id == LCORE_ID_ANY)
-		core_id = 0;
+		core_id = rte_get_master_lcore();
 
 	hif = mrvl_get_hif(rxq->priv, core_id);
@@ -1715,5 +1715,5 @@ mrvl_rx_queue_release(void *rxq)
 
 	if (core_id == LCORE_ID_ANY)
-		core_id = 0;
+		core_id = rte_get_master_lcore();
 
 	if (!q)
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.725364479 +0100
+++ 0013-net-mvpp2-fix-non-EAL-thread-support.patch	2020-07-17 17:16:59.985771318 +0100
@@ -1 +1 @@
-From b52d25ae4b1bbe9adba0d9276b7771ec27e3d151 Mon Sep 17 00:00:00 2001
+From 978be5abe162b5ebe1be3eb0d74fdfeedbbaa9bc Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit b52d25ae4b1bbe9adba0d9276b7771ec27e3d151 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index b98b1fd667..9037274327 100644
+index ab4c14e513..97842fba76 100644
@@ -23 +24 @@
-@@ -817,5 +817,5 @@ mrvl_flush_bpool(struct rte_eth_dev *dev)
+@@ -813,5 +813,5 @@ mrvl_flush_bpool(struct rte_eth_dev *dev)
@@ -30 +31 @@
-@@ -1621,5 +1621,5 @@ mrvl_fill_bpool(struct mrvl_rxq *rxq, int num)
+@@ -1565,5 +1565,5 @@ mrvl_fill_bpool(struct mrvl_rxq *rxq, int num)
@@ -37 +38 @@
-@@ -1771,5 +1771,5 @@ mrvl_rx_queue_release(void *rxq)
+@@ -1715,5 +1715,5 @@ mrvl_rx_queue_release(void *rxq)


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'eal/arm: add vcopyq intrinsic for aarch32' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (11 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/mvpp2: fix non-EAL thread support' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/ixgbe: fix include of vector header file' " Kevin Traynor
                   ` (11 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Ruifeng Wang; +Cc: Ferruh Yigit, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From b6c30d848b74f32a71d35486e6ceebe878118d57 Mon Sep 17 00:00:00 2001
From: Ruifeng Wang <ruifeng.wang@arm.com>
Date: Wed, 24 Jun 2020 15:10:12 +0800
Subject: [PATCH] eal/arm: add vcopyq intrinsic for aarch32

[ upstream commit 4eb25acdb773b30c94adb0080659c9280bca4ee1 ]

vcopyq_laneq_u32 should be implemented for aarch32 which doesn't have
the intrinsic.
This fixes build of examples/l3fwd for armv7.

Fixes: 3c4b4024c225 ("arch/arm: add vcopyq_laneq_u32 for old gcc")

Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 lib/librte_eal/common/include/arch/arm/rte_vect.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/lib/librte_eal/common/include/arch/arm/rte_vect.h b/lib/librte_eal/common/include/arch/arm/rte_vect.h
index 2a18a68546..71e56ec63e 100644
--- a/lib/librte_eal/common/include/arch/arm/rte_vect.h
+++ b/lib/librte_eal/common/include/arch/arm/rte_vect.h
@@ -63,5 +63,9 @@ vaddvq_u16(uint16x8_t a)
 #endif
 
-#if defined(RTE_TOOLCHAIN_GCC) && (GCC_VERSION < 70000)
+#if defined(RTE_ARCH_ARM) || \
+(defined(RTE_ARCH_ARM64) && RTE_TOOLCHAIN_GCC && (GCC_VERSION < 70000))
+/* NEON intrinsic vcopyq_laneq_u32() is not supported in ARMv7-A(AArch32)
+ * On AArch64, this intrinsic is supported since GCC version 7.
+ */
 static inline uint32x4_t
 vcopyq_laneq_u32(uint32x4_t a, const int lane_a,
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.779618644 +0100
+++ 0014-eal-arm-add-vcopyq-intrinsic-for-aarch32.patch	2020-07-17 17:16:59.986771296 +0100
@@ -1 +1 @@
-From 4eb25acdb773b30c94adb0080659c9280bca4ee1 Mon Sep 17 00:00:00 2001
+From b6c30d848b74f32a71d35486e6ceebe878118d57 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 4eb25acdb773b30c94adb0080659c9280bca4ee1 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -16 +17 @@
- lib/librte_eal/arm/include/rte_vect.h | 6 +++++-
+ lib/librte_eal/common/include/arch/arm/rte_vect.h | 6 +++++-
@@ -19,4 +20,4 @@
-diff --git a/lib/librte_eal/arm/include/rte_vect.h b/lib/librte_eal/arm/include/rte_vect.h
-index 9287a11173..01c51712a1 100644
---- a/lib/librte_eal/arm/include/rte_vect.h
-+++ b/lib/librte_eal/arm/include/rte_vect.h
+diff --git a/lib/librte_eal/common/include/arch/arm/rte_vect.h b/lib/librte_eal/common/include/arch/arm/rte_vect.h
+index 2a18a68546..71e56ec63e 100644
+--- a/lib/librte_eal/common/include/arch/arm/rte_vect.h
++++ b/lib/librte_eal/common/include/arch/arm/rte_vect.h
@@ -26 +27 @@
--#if RTE_CC_IS_GNU && (GCC_VERSION < 70000)
+-#if defined(RTE_TOOLCHAIN_GCC) && (GCC_VERSION < 70000)
@@ -28 +29 @@
-+(defined(RTE_ARCH_ARM64) && RTE_CC_IS_GNU && (GCC_VERSION < 70000))
++(defined(RTE_ARCH_ARM64) && RTE_TOOLCHAIN_GCC && (GCC_VERSION < 70000))


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/ixgbe: fix include of vector header file' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (12 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'eal/arm: add vcopyq intrinsic for aarch32' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/mlx5: fix iterator type in Rx queue management' " Kevin Traynor
                   ` (10 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Ruifeng Wang; +Cc: Ferruh Yigit, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/900cee6481fbffd87ae60aa85f6d1464611bfe52

Thanks.

Kevin.

---
From 900cee6481fbffd87ae60aa85f6d1464611bfe52 Mon Sep 17 00:00:00 2001
From: Ruifeng Wang <ruifeng.wang@arm.com>
Date: Wed, 24 Jun 2020 15:10:14 +0800
Subject: [PATCH] net/ixgbe: fix include of vector header file

[ upstream commit 2b7a54f091f2049cc668278344d3f95325f54a9f ]

The include of 'arm_neon.h' causes issues to old gcc and aarch32.
Including 'rte_vect.h' instead fixes these issues.

Fixes: b20971b6cca0 ("net/ixgbe: implement vector driver for ARM")

Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c b/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c
index fa73d1e45d..d967236c44 100644
--- a/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c
+++ b/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c
@@ -6,4 +6,5 @@
 #include <rte_ethdev_driver.h>
 #include <rte_malloc.h>
+#include <rte_vect.h>
 
 #include "ixgbe_ethdev.h"
@@ -11,6 +12,4 @@
 #include "ixgbe_rxtx_vec_common.h"
 
-#include <arm_neon.h>
-
 #pragma GCC diagnostic ignored "-Wcast-qual"
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.829252942 +0100
+++ 0015-net-ixgbe-fix-include-of-vector-header-file.patch	2020-07-17 17:16:59.987771275 +0100
@@ -1 +1 @@
-From 2b7a54f091f2049cc668278344d3f95325f54a9f Mon Sep 17 00:00:00 2001
+From 900cee6481fbffd87ae60aa85f6d1464611bfe52 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 2b7a54f091f2049cc668278344d3f95325f54a9f ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index 293b7c8bd1..aa27ee1777 100644
+index fa73d1e45d..d967236c44 100644


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'net/mlx5: fix iterator type in Rx queue management' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (13 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/ixgbe: fix include of vector header file' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'vhost: fix features definition location' " Kevin Traynor
                   ` (9 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Michael Baum; +Cc: Matan Azrad, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From f8a7fe45edad4e9520be4f66c9140fa3c72407e1 Mon Sep 17 00:00:00 2001
From: Michael Baum <michaelba@mellanox.com>
Date: Wed, 24 Jun 2020 13:50:39 +0000
Subject: [PATCH] net/mlx5: fix iterator type in Rx queue management

[ upstream commit 0f006468c53c8151fa70ff41869c1a76316fe224 ]

The mlx5_check_vec_rx_support function in the mlx5_rxtx_vec.c file
passes the RX queues array in the loop. Similarly, the mlx5_mprq_enabled
function in the mlx5_rxq.c file passes the RX queues array in the loop.

In both cases, the iterator of the loop is called i and the variable
representing the array size is called rxqs_n.
The i variable is of UINT16_T type while the rxqs_n variable is of
unsigned int type. The size of the rxqs_n variable is much larger than
the number of iterations allowed by the i type, theoretically there may
be a situation where the value of the rxqs_n will be greater than can be
represented by 16 bits and the loop will never end.

Change the type of i to UINT32_T.

Fixes: 7d6bf6b866b8 ("net/mlx5: add Multi-Packet Rx support")
Fixes: 6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86")

Signed-off-by: Michael Baum <michaelba@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
---
 drivers/net/mlx5/mlx5_rxq.c      | 2 +-
 drivers/net/mlx5/mlx5_rxtx_vec.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c
index 566fb64fad..314ffc3876 100644
--- a/drivers/net/mlx5/mlx5_rxq.c
+++ b/drivers/net/mlx5/mlx5_rxq.c
@@ -105,5 +105,5 @@ mlx5_mprq_enabled(struct rte_eth_dev *dev)
 {
 	struct mlx5_priv *priv = dev->data->dev_private;
-	uint16_t i;
+	uint32_t i;
 	uint16_t n = 0;
 
diff --git a/drivers/net/mlx5/mlx5_rxtx_vec.c b/drivers/net/mlx5/mlx5_rxtx_vec.c
index 9a3a5ae437..b8d624d146 100644
--- a/drivers/net/mlx5/mlx5_rxtx_vec.c
+++ b/drivers/net/mlx5/mlx5_rxtx_vec.c
@@ -320,5 +320,5 @@ mlx5_check_vec_rx_support(struct rte_eth_dev *dev)
 {
 	struct mlx5_priv *priv = dev->data->dev_private;
-	uint16_t i;
+	uint32_t i;
 
 	if (!priv->config.rx_vec_en)
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.895016480 +0100
+++ 0016-net-mlx5-fix-iterator-type-in-Rx-queue-management.patch	2020-07-17 17:16:59.990771210 +0100
@@ -1 +1 @@
-From 0f006468c53c8151fa70ff41869c1a76316fe224 Mon Sep 17 00:00:00 2001
+From f8a7fe45edad4e9520be4f66c9140fa3c72407e1 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 0f006468c53c8151fa70ff41869c1a76316fe224 ]
+
@@ -22 +23,0 @@
-Cc: stable@dpdk.org
@@ -32 +33 @@
-index bd0037b823..b436f06107 100644
+index 566fb64fad..314ffc3876 100644
@@ -35 +36 @@
-@@ -109,5 +109,5 @@ mlx5_mprq_enabled(struct rte_eth_dev *dev)
+@@ -105,5 +105,5 @@ mlx5_mprq_enabled(struct rte_eth_dev *dev)
@@ -41 +42 @@
- 	uint16_t n_ibv = 0;
+ 
@@ -43 +44 @@
-index b38bd203ce..7fae2010f9 100644
+index 9a3a5ae437..b8d624d146 100644
@@ -46 +47 @@
-@@ -157,5 +157,5 @@ mlx5_check_vec_rx_support(struct rte_eth_dev *dev)
+@@ -320,5 +320,5 @@ mlx5_check_vec_rx_support(struct rte_eth_dev *dev)


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'vhost: fix features definition location' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (14 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'net/mlx5: fix iterator type in Rx queue management' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'mem: fix 32-bit init config with meson' " Kevin Traynor
                   ` (8 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Matan Azrad; +Cc: Chenbo Xia, Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/31ec292e0ec18f90380a5360adac7cc597d210e8

Thanks.

Kevin.

---
From 31ec292e0ec18f90380a5360adac7cc597d210e8 Mon Sep 17 00:00:00 2001
From: Matan Azrad <matan@mellanox.com>
Date: Thu, 18 Jun 2020 19:08:20 +0000
Subject: [PATCH] vhost: fix features definition location

[ upstream commit da2b788041d2becb6ffa44b16456bd2041119269 ]

The vhost library provide an infrastructure in order to help the DPDK
users to manage vhost devices.

One of the infrastructure parts is the features enablement APIs.

Some features bits may be defined only in the internal file vhost.h in
case the kernel version doesn't include them.

Hence, user running on old kernel may not be able to manage thus
features.

Move all the feature bits definitions to the API file rte_vhost.h.

Fixes: db69be54b6ff ("vhost: hide internal code")
Fixes: 8d286dbeb8d7 ("vhost: fix multiple queue not enabled for old kernels")
Fixes: 3d3c6590b58c ("vhost: enable virtio MTU feature")
Fixes: 704098fc478c ("vhost: fix build with old kernels")

Signed-off-by: Matan Azrad <matan@mellanox.com>
Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 lib/librte_vhost/rte_vhost.h | 17 +++++++++++++++++
 lib/librte_vhost/vhost.h     | 17 -----------------
 2 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/lib/librte_vhost/rte_vhost.h b/lib/librte_vhost/rte_vhost.h
index 6f1b4eabeb..0b5db0d8ad 100644
--- a/lib/librte_vhost/rte_vhost.h
+++ b/lib/librte_vhost/rte_vhost.h
@@ -32,4 +32,21 @@ extern "C" {
 #define RTE_VHOST_USER_POSTCOPY_SUPPORT		(1ULL << 4)
 
+/* Features. */
+#ifndef VIRTIO_NET_F_GUEST_ANNOUNCE
+ #define VIRTIO_NET_F_GUEST_ANNOUNCE 21
+#endif
+
+#ifndef VIRTIO_NET_F_MQ
+ #define VIRTIO_NET_F_MQ		22
+#endif
+
+#ifndef VIRTIO_NET_F_MTU
+ #define VIRTIO_NET_F_MTU 3
+#endif
+
+#ifndef VIRTIO_F_ANY_LAYOUT
+ #define VIRTIO_F_ANY_LAYOUT		27
+#endif
+
 /** Protocol features. */
 #ifndef VHOST_USER_PROTOCOL_F_MQ
diff --git a/lib/librte_vhost/vhost.h b/lib/librte_vhost/vhost.h
index e75afcce20..932f4e35c4 100644
--- a/lib/librte_vhost/vhost.h
+++ b/lib/librte_vhost/vhost.h
@@ -157,24 +157,7 @@ struct vhost_virtqueue {
 } __rte_cache_aligned;
 
-/* Old kernels have no such macros defined */
-#ifndef VIRTIO_NET_F_GUEST_ANNOUNCE
- #define VIRTIO_NET_F_GUEST_ANNOUNCE 21
-#endif
-
-#ifndef VIRTIO_NET_F_MQ
- #define VIRTIO_NET_F_MQ		22
-#endif
-
 #define VHOST_MAX_VRING			0x100
 #define VHOST_MAX_QUEUE_PAIRS		0x80
 
-#ifndef VIRTIO_NET_F_MTU
- #define VIRTIO_NET_F_MTU 3
-#endif
-
-#ifndef VIRTIO_F_ANY_LAYOUT
- #define VIRTIO_F_ANY_LAYOUT		27
-#endif
-
 /* Declare IOMMU related bits for older kernels */
 #ifndef VIRTIO_F_IOMMU_PLATFORM
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:00.950977073 +0100
+++ 0017-vhost-fix-features-definition-location.patch	2020-07-17 17:16:59.992771167 +0100
@@ -1 +1 @@
-From da2b788041d2becb6ffa44b16456bd2041119269 Mon Sep 17 00:00:00 2001
+From 31ec292e0ec18f90380a5360adac7cc597d210e8 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit da2b788041d2becb6ffa44b16456bd2041119269 ]
+
@@ -23 +24,0 @@
-Cc: stable@dpdk.org
@@ -34 +35 @@
-index 2fbc364643..8a5c332c83 100644
+index 6f1b4eabeb..0b5db0d8ad 100644
@@ -37,2 +38,2 @@
-@@ -37,4 +37,21 @@ extern "C" {
- #define RTE_VHOST_USER_LINEARBUF_SUPPORT	(1ULL << 6)
+@@ -32,4 +32,21 @@ extern "C" {
+ #define RTE_VHOST_USER_POSTCOPY_SUPPORT		(1ULL << 4)
@@ -60 +61 @@
-index a0fe703eec..0344636997 100644
+index e75afcce20..932f4e35c4 100644
@@ -63 +64 @@
-@@ -205,24 +205,7 @@ struct vhost_virtqueue {
+@@ -157,24 +157,7 @@ struct vhost_virtqueue {


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'mem: fix 32-bit init config with meson' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (15 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'vhost: fix features definition location' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'examples/eventdev: fix 32-bit coremask' " Kevin Traynor
                   ` (7 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: Ferruh Yigit, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From cf6ce61a97ab5bd07061b7e8899b902c6b430f7c Mon Sep 17 00:00:00 2001
From: Bruce Richardson <bruce.richardson@intel.com>
Date: Thu, 2 Jul 2020 11:57:21 +0100
Subject: [PATCH] mem: fix 32-bit init config with meson

[ upstream commit b29ac33ffccf856825c42dc11185b112f569ba57 ]

When building with meson, the default size of virtual address space
reserved for mapping pages was globally set at 512GB, which is too big for
use in 32-bit processes. To match the behaviour with "make", we configure
this to be 512GB for 64-bit and 2GB for 32-bit builds.

Bugzilla ID: 498
Fixes: 66cc45e293ed ("mem: replace memseg with memseg lists")

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 config/meson.build  | 5 +++++
 config/rte_config.h | 1 -
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/config/meson.build b/config/meson.build
index 88742ce9db..3b7fad67d7 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -134,4 +134,9 @@ dpdk_conf.set('RTE_MAX_VFIO_GROUPS', 64)
 dpdk_conf.set('RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB', 64)
 dpdk_conf.set('RTE_LIBRTE_DPAA2_USE_PHYS_IOVA', true)
+if dpdk_conf.get('RTE_ARCH_64')
+	dpdk_conf.set('RTE_MAX_MEM_MB', 524288)
+else # for 32-bit we need smaller reserved memory areas
+	dpdk_conf.set('RTE_MAX_MEM_MB', 2048)
+endif
 
 
diff --git a/config/rte_config.h b/config/rte_config.h
index d3732e9533..17b9a1ebc9 100644
--- a/config/rte_config.h
+++ b/config/rte_config.h
@@ -31,5 +31,4 @@
 #define RTE_MAX_MEMSEG_PER_TYPE 32768
 #define RTE_MAX_MEM_MB_PER_TYPE 65536
-#define RTE_MAX_MEM_MB 524288
 #define RTE_MAX_MEMZONE 2560
 #define RTE_MAX_TAILQ 32
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.008386903 +0100
+++ 0018-mem-fix-32-bit-init-config-with-meson.patch	2020-07-17 17:16:59.993771146 +0100
@@ -1 +1 @@
-From b29ac33ffccf856825c42dc11185b112f569ba57 Mon Sep 17 00:00:00 2001
+From cf6ce61a97ab5bd07061b7e8899b902c6b430f7c Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit b29ac33ffccf856825c42dc11185b112f569ba57 ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org
@@ -23 +24 @@
-index 351e268c1f..241d62acc7 100644
+index 88742ce9db..3b7fad67d7 100644
@@ -26 +27 @@
-@@ -239,4 +239,9 @@ dpdk_conf.set('RTE_MAX_VFIO_GROUPS', 64)
+@@ -134,4 +134,9 @@ dpdk_conf.set('RTE_MAX_VFIO_GROUPS', 64)
@@ -37 +38 @@
-index e9201fd463..086acf74a2 100644
+index d3732e9533..17b9a1ebc9 100644
@@ -40 +41 @@
-@@ -39,5 +39,4 @@
+@@ -31,5 +31,4 @@


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'examples/eventdev: fix 32-bit coremask' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (16 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'mem: fix 32-bit init config with meson' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'devtools: fix path in forbidden token check' " Kevin Traynor
                   ` (6 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Harry van Haaren; +Cc: Jun W Zhou, Mao Jiang, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From a11b34f6f2c3dad84f5fc876553ee40c087fe1ca Mon Sep 17 00:00:00 2001
From: Harry van Haaren <harry.van.haaren@intel.com>
Date: Tue, 16 Jun 2020 17:56:03 +0100
Subject: [PATCH] examples/eventdev: fix 32-bit coremask

[ upstream commit ff0f1040b66edcbaf93fc217ea452e4a9ae424e2 ]

This commit fixes a bug in 32-bit environments when a core mask greater
than 32-bits is requested. The fix is to convert the bitmask logic to
64 bits, aligning 64 and 32 bit implementations.

Fixes: adb5d548 ("examples/eventdev_pipeline_sw_pmd: add sample app")

Reported-by: Jun W Zhou <junx.w.zhou@intel.com>
Suggested-by: Mao Jiang <maox.jiang@intel.com>
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
---
 examples/eventdev_pipeline/main.c            | 10 +++++-----
 examples/eventdev_pipeline/pipeline_common.h |  8 ++++----
 2 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/examples/eventdev_pipeline/main.c b/examples/eventdev_pipeline/main.c
index 85d8a624bc..86c42aa9c2 100644
--- a/examples/eventdev_pipeline/main.c
+++ b/examples/eventdev_pipeline/main.c
@@ -82,5 +82,5 @@ parse_coremask(const char *coremask)
 		for (j = 0; j < BITS_HEX && idx < MAX_NUM_CORE; j++, idx++) {
 			if ((1 << j) & val) {
-				mask |= (1UL << idx);
+				mask |= (1ULL << idx);
 				count++;
 			}
@@ -233,8 +233,8 @@ parse_app_args(int argc, char **argv)
 
 	for (i = 0; i < MAX_NUM_CORE; i++) {
-		fdata->rx_core[i] = !!(rx_lcore_mask & (1UL << i));
-		fdata->tx_core[i] = !!(tx_lcore_mask & (1UL << i));
-		fdata->sched_core[i] = !!(sched_lcore_mask & (1UL << i));
-		fdata->worker_core[i] = !!(worker_lcore_mask & (1UL << i));
+		fdata->rx_core[i] = !!(rx_lcore_mask & (1ULL << i));
+		fdata->tx_core[i] = !!(tx_lcore_mask & (1ULL << i));
+		fdata->sched_core[i] = !!(sched_lcore_mask & (1ULL << i));
+		fdata->worker_core[i] = !!(worker_lcore_mask & (1ULL << i));
 
 		if (fdata->worker_core[i])
diff --git a/examples/eventdev_pipeline/pipeline_common.h b/examples/eventdev_pipeline/pipeline_common.h
index 016a3f702b..b3fdf084ba 100644
--- a/examples/eventdev_pipeline/pipeline_common.h
+++ b/examples/eventdev_pipeline/pipeline_common.h
@@ -52,8 +52,8 @@ struct fastpath_data {
 	bool tx_single;
 	bool sched_single;
-	unsigned int rx_core[MAX_NUM_CORE];
-	unsigned int tx_core[MAX_NUM_CORE];
-	unsigned int sched_core[MAX_NUM_CORE];
-	unsigned int worker_core[MAX_NUM_CORE];
+	uint64_t rx_core[MAX_NUM_CORE];
+	uint64_t tx_core[MAX_NUM_CORE];
+	uint64_t sched_core[MAX_NUM_CORE];
+	uint64_t worker_core[MAX_NUM_CORE];
 	struct setup_data cap;
 } __rte_cache_aligned;
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.063144606 +0100
+++ 0019-examples-eventdev-fix-32-bit-coremask.patch	2020-07-17 17:16:59.994771125 +0100
@@ -1 +1 @@
-From ff0f1040b66edcbaf93fc217ea452e4a9ae424e2 Mon Sep 17 00:00:00 2001
+From a11b34f6f2c3dad84f5fc876553ee40c087fe1ca Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit ff0f1040b66edcbaf93fc217ea452e4a9ae424e2 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -22 +23 @@
-index 21958269f7..4ac5821539 100644
+index 85d8a624bc..86c42aa9c2 100644
@@ -46 +47 @@
-index c7245f7f0f..6a4287602e 100644
+index 016a3f702b..b3fdf084ba 100644


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'devtools: fix path in forbidden token check' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (17 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'examples/eventdev: fix 32-bit coremask' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'sched: fix port time rounding' " Kevin Traynor
                   ` (5 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: David Marchand; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From c86c647e141f7285afc4767711c208d494e571df Mon Sep 17 00:00:00 2001
From: David Marchand <david.marchand@redhat.com>
Date: Mon, 6 Jul 2020 10:00:21 +0200
Subject: [PATCH] devtools: fix path in forbidden token check

[ upstream commit 8d4a222e12f8ce99714fad5011d76bd6a38c36e3 ]

Fix displayed filename by adjusting the extraction from the patch.

Before:
Warning in /lib/librte_eal/linux/eal.c:

After:
Warning in lib/librte_eal/linux/eal.c:

Fixes: 7413e7f2aeb3 ("devtools: alert on new calls to exit from libs")

Signed-off-by: David Marchand <david.marchand@redhat.com>
---
 devtools/check-forbidden-tokens.awk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/devtools/check-forbidden-tokens.awk b/devtools/check-forbidden-tokens.awk
index 8c89de3d4e..f86cbe8dc1 100755
--- a/devtools/check-forbidden-tokens.awk
+++ b/devtools/check-forbidden-tokens.awk
@@ -63,5 +63,5 @@ BEGIN {
 END {
 	if (count > 0) {
-		print "Warning in " substr(last_file,6) ":"
+		print "Warning in " substr(last_file,7) ":"
 		print MESSAGE
 		exit RET_ON_FAIL
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.116836913 +0100
+++ 0020-devtools-fix-path-in-forbidden-token-check.patch	2020-07-17 17:16:59.994771125 +0100
@@ -1 +1 @@
-From 8d4a222e12f8ce99714fad5011d76bd6a38c36e3 Mon Sep 17 00:00:00 2001
+From c86c647e141f7285afc4767711c208d494e571df Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 8d4a222e12f8ce99714fad5011d76bd6a38c36e3 ]
+
@@ -15 +16,0 @@
-Cc: stable@dpdk.org


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'sched: fix port time rounding' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (18 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'devtools: fix path in forbidden token check' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'lib: remind experimental status in headers' " Kevin Traynor
                   ` (4 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Alan Dewar; +Cc: Jasvinder Singh, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/38f30a1f450b56666f5339ee4e68f795cdf51b06

Thanks.

Kevin.

---
From 38f30a1f450b56666f5339ee4e68f795cdf51b06 Mon Sep 17 00:00:00 2001
From: Alan Dewar <alan.dewar@att.com>
Date: Thu, 25 Jun 2020 10:59:30 +0100
Subject: [PATCH] sched: fix port time rounding

[ upstream commit 83415d4fd88c925002655aa755601998a3cdef2c ]

The QoS scheduler works off port time that is computed from the number
of CPU cycles that have elapsed since the last time the port was
polled.   It divides the number of elapsed cycles to calculate how
many bytes can be sent, however this division can generate rounding
errors, where some fraction of a byte sent may be lost.

Lose enough of these fractional bytes and the QoS scheduler
underperforms.  The problem is worse with low bandwidths.

To compensate for this rounding error this fix doesn't advance the
port's time_cpu_cycles by the number of cycles that have elapsed,
but by multiplying the computed number of bytes that can be sent
(which has been rounded down) by number of cycles per byte.
This will mean that port's time_cpu_cycles will lag behind the CPU
cycles momentarily.  At the next poll, the lag will be taken into
account.

Fixes: de3cfa2c98 ("sched: initial import")

Signed-off-by: Alan Dewar <alan.dewar@att.com>
Acked-by: Jasvinder Singh <jasvinder.singh@intel.com>
---
 lib/librte_sched/rte_sched.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/lib/librte_sched/rte_sched.c b/lib/librte_sched/rte_sched.c
index 89c3d1e7f7..d8ace20fe0 100644
--- a/lib/librte_sched/rte_sched.c
+++ b/lib/librte_sched/rte_sched.c
@@ -201,4 +201,5 @@ struct rte_sched_port {
 	uint64_t time;                /* Current NIC TX time measured in bytes */
 	struct rte_reciprocal inv_cycles_per_byte; /* CPU cycles per byte */
+	uint64_t cycles_per_byte;
 
 	/* Scheduling loop detection */
@@ -683,4 +684,5 @@ rte_sched_port_config(struct rte_sched_port_params *params)
 		/ params->rate;
 	port->inv_cycles_per_byte = rte_reciprocal_value(cycles_per_byte);
+	port->cycles_per_byte = cycles_per_byte;
 
 	/* Scheduling loop detection */
@@ -2191,7 +2193,11 @@ rte_sched_port_time_resync(struct rte_sched_port *port)
 {
 	uint64_t cycles = rte_get_tsc_cycles();
-	uint64_t cycles_diff = cycles - port->time_cpu_cycles;
+	uint64_t cycles_diff;
 	uint64_t bytes_diff;
 
+	if (cycles < port->time_cpu_cycles)
+		port->time_cpu_cycles = 0;
+
+	cycles_diff = cycles - port->time_cpu_cycles;
 	/* Compute elapsed time in bytes */
 	bytes_diff = rte_reciprocal_divide(cycles_diff << RTE_SCHED_TIME_SHIFT,
@@ -2199,5 +2205,6 @@ rte_sched_port_time_resync(struct rte_sched_port *port)
 
 	/* Advance port time */
-	port->time_cpu_cycles = cycles;
+	port->time_cpu_cycles +=
+		(bytes_diff * port->cycles_per_byte) >> RTE_SCHED_TIME_SHIFT;
 	port->time_cpu_bytes += bytes_diff;
 	if (port->time < port->time_cpu_bytes)
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.165113282 +0100
+++ 0021-sched-fix-port-time-rounding.patch	2020-07-17 17:16:59.997771060 +0100
@@ -1 +1 @@
-From 83415d4fd88c925002655aa755601998a3cdef2c Mon Sep 17 00:00:00 2001
+From 38f30a1f450b56666f5339ee4e68f795cdf51b06 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 83415d4fd88c925002655aa755601998a3cdef2c ]
+
@@ -24 +25,0 @@
-Cc: stable@dpdk.org
@@ -33 +34 @@
-index 68a171b508..0fa0741664 100644
+index 89c3d1e7f7..d8ace20fe0 100644
@@ -36 +37 @@
-@@ -223,4 +223,5 @@ struct rte_sched_port {
+@@ -201,4 +201,5 @@ struct rte_sched_port {
@@ -41,2 +42,2 @@
- 	/* Grinders */
-@@ -853,4 +854,5 @@ rte_sched_port_config(struct rte_sched_port_params *params)
+ 	/* Scheduling loop detection */
+@@ -683,4 +684,5 @@ rte_sched_port_config(struct rte_sched_port_params *params)
@@ -47,2 +48,2 @@
- 	/* Grinders */
-@@ -2674,8 +2676,12 @@ rte_sched_port_time_resync(struct rte_sched_port *port)
+ 	/* Scheduling loop detection */
+@@ -2191,7 +2193,11 @@ rte_sched_port_time_resync(struct rte_sched_port *port)
@@ -54 +54,0 @@
- 	uint32_t i;
@@ -62 +62 @@
-@@ -2683,5 +2689,6 @@ rte_sched_port_time_resync(struct rte_sched_port *port)
+@@ -2199,5 +2205,6 @@ rte_sched_port_time_resync(struct rte_sched_port *port)


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'lib: remind experimental status in headers' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (19 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'sched: fix port time rounding' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'rawdev: remove remaining experimental tags' " Kevin Traynor
                   ` (3 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: David Marchand; +Cc: Bruce Richardson, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/876256d77a4adaa9199815faa85b655c2a660577

Thanks.

Kevin.

---
From 876256d77a4adaa9199815faa85b655c2a660577 Mon Sep 17 00:00:00 2001
From: David Marchand <david.marchand@redhat.com>
Date: Fri, 26 Jun 2020 10:16:38 +0200
Subject: [PATCH] lib: remind experimental status in headers

[ upstream commit 74f4d6424da1297bd6e83dcb7bd84444ca8c59dd ]

The following libraries are experimental, all of their functions can
be changed or removed:

- librte_bbdev
- librte_bpf
- librte_compressdev
- librte_fib
- librte_flow_classify
- librte_graph
- librte_ipsec
- librte_node
- librte_rcu
- librte_rib
- librte_stack
- librte_telemetry

Their status is properly announced in MAINTAINERS.
Remind this status in their headers in a common fashion (aligned to ABI
docs).

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
---
 lib/librte_bbdev/rte_bbdev.h                 | 3 ++-
 lib/librte_bpf/rte_bpf.h                     | 6 +++++-
 lib/librte_compressdev/rte_compressdev.h     | 6 +++++-
 lib/librte_flow_classify/rte_flow_classify.h | 6 ++++--
 lib/librte_telemetry/rte_telemetry.h         | 7 ++++++-
 5 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/lib/librte_bbdev/rte_bbdev.h b/lib/librte_bbdev/rte_bbdev.h
index f53ee101da..105468d61a 100644
--- a/lib/librte_bbdev/rte_bbdev.h
+++ b/lib/librte_bbdev/rte_bbdev.h
@@ -12,5 +12,6 @@
  *
  * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
  *
  * This API allows an application to discover, configure and use a device to
diff --git a/lib/librte_bpf/rte_bpf.h b/lib/librte_bpf/rte_bpf.h
index c8b9601764..3d4e9b9f69 100644
--- a/lib/librte_bpf/rte_bpf.h
+++ b/lib/librte_bpf/rte_bpf.h
@@ -8,7 +8,11 @@
 /**
  * @file rte_bpf.h
- * @b EXPERIMENTAL: this API may change without prior notice
  *
  * RTE BPF support.
+ *
+ * @warning
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
+ *
  * librte_bpf provides a framework to load and execute eBPF bytecode
  * inside user-space dpdk based applications.
diff --git a/lib/librte_compressdev/rte_compressdev.h b/lib/librte_compressdev/rte_compressdev.h
index 7b68170a5f..ea19014874 100644
--- a/lib/librte_compressdev/rte_compressdev.h
+++ b/lib/librte_compressdev/rte_compressdev.h
@@ -9,5 +9,9 @@
  * @file rte_compressdev.h
  *
- * RTE Compression Device APIs
+ * RTE Compression Device APIs.
+ *
+ * @warning
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
  *
  * Defines comp device APIs for the provisioning of compression operations.
diff --git a/lib/librte_flow_classify/rte_flow_classify.h b/lib/librte_flow_classify/rte_flow_classify.h
index 01e88e543a..10b39ac7b1 100644
--- a/lib/librte_flow_classify/rte_flow_classify.h
+++ b/lib/librte_flow_classify/rte_flow_classify.h
@@ -9,7 +9,9 @@
  * @file
  *
- * RTE Flow Classify Library
+ * RTE Flow Classify Library.
  *
- * @b EXPERIMENTAL: this API may change without prior notice
+ * @warning
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
  *
  * This library provides flow record information with some measured properties.
diff --git a/lib/librte_telemetry/rte_telemetry.h b/lib/librte_telemetry/rte_telemetry.h
index 119db16fee..41c211dea5 100644
--- a/lib/librte_telemetry/rte_telemetry.h
+++ b/lib/librte_telemetry/rte_telemetry.h
@@ -10,5 +10,10 @@
 /**
  * @file
- * RTE Telemetry
+ *
+ * RTE Telemetry.
+ *
+ * @warning
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
  *
  * The telemetry library provides a method to retrieve statistics from
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.224876080 +0100
+++ 0022-lib-remind-experimental-status-in-headers.patch	2020-07-17 17:17:00.000770996 +0100
@@ -1 +1 @@
-From 74f4d6424da1297bd6e83dcb7bd84444ca8c59dd Mon Sep 17 00:00:00 2001
+From 876256d77a4adaa9199815faa85b655c2a660577 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 74f4d6424da1297bd6e83dcb7bd84444ca8c59dd ]
+
@@ -26,2 +27,0 @@
-Cc: stable@dpdk.org
-
@@ -31,18 +31,6 @@
- doc/guides/contributing/abi_policy.rst       |  8 +++++---
- lib/librte_bbdev/rte_bbdev.h                 |  3 ++-
- lib/librte_bpf/rte_bpf.h                     |  6 +++++-
- lib/librte_compressdev/rte_compressdev.h     |  6 +++++-
- lib/librte_fib/rte_fib.h                     |  7 +++++++
- lib/librte_fib/rte_fib6.h                    |  7 +++++++
- lib/librte_flow_classify/rte_flow_classify.h |  6 ++++--
- lib/librte_graph/rte_graph.h                 |  3 ++-
- lib/librte_graph/rte_graph_worker.h          |  3 ++-
- lib/librte_ipsec/rte_ipsec.h                 |  6 +++++-
- lib/librte_node/rte_node_eth_api.h           |  3 ++-
- lib/librte_node/rte_node_ip4_api.h           |  3 ++-
- lib/librte_rcu/rte_rcu_qsbr.h                |  7 ++++++-
- lib/librte_rib/rte_rib.h                     |  7 +++++++
- lib/librte_rib/rte_rib6.h                    |  7 +++++++
- lib/librte_stack/rte_stack.h                 |  7 +++++--
- lib/librte_telemetry/rte_telemetry.h         | 10 ++++++----
- 17 files changed, 79 insertions(+), 20 deletions(-)
+ lib/librte_bbdev/rte_bbdev.h                 | 3 ++-
+ lib/librte_bpf/rte_bpf.h                     | 6 +++++-
+ lib/librte_compressdev/rte_compressdev.h     | 6 +++++-
+ lib/librte_flow_classify/rte_flow_classify.h | 6 ++++--
+ lib/librte_telemetry/rte_telemetry.h         | 7 ++++++-
+ 5 files changed, 22 insertions(+), 6 deletions(-)
@@ -50,25 +37,0 @@
-diff --git a/doc/guides/contributing/abi_policy.rst b/doc/guides/contributing/abi_policy.rst
-index 1b2fa27865..d0affa9e60 100644
---- a/doc/guides/contributing/abi_policy.rst
-+++ b/doc/guides/contributing/abi_policy.rst
-@@ -28,5 +28,6 @@ General Guidelines
-    once approved these will form part of the next ABI version.
- #. Libraries or APIs marked as :ref:`experimental <experimental_apis>` may
--   change without constraint, as they are not considered part of an ABI version.
-+   be changed or removed without prior notice, as they are not considered part
-+   of an ABI version.
- #. Updates to the :ref:`minimum hardware requirements <hw_rqmts>`, which drop
-    support for hardware which was previously supported, should be treated as an
-@@ -295,5 +296,5 @@ APIs
- 
- APIs marked as ``experimental`` are not considered part of an ABI version and
--may change without warning at any time. Since changes to APIs are most likely
-+may be changed or removed without prior notice. Since changes to APIs are most likely
- immediately after their introduction, as users begin to take advantage of those
- new APIs and start finding issues with them, new DPDK APIs will be automatically
-@@ -331,3 +332,4 @@ Libraries
- 
- Libraries marked as ``experimental`` are entirely not considered part of an ABI
--version, and may change without warning at any time.
-+version.
-+All functions in such libraries may be changed or removed without prior notice.
@@ -76 +39 @@
-index ecd95a823d..57291373fa 100644
+index f53ee101da..105468d61a 100644
@@ -88 +51 @@
-index cbf1cddaca..e2d419b4ef 100644
+index c8b9601764..3d4e9b9f69 100644
@@ -105 +68 @@
-index 8052efe675..2840c27c6c 100644
+index 7b68170a5f..ea19014874 100644
@@ -119,32 +81,0 @@
-diff --git a/lib/librte_fib/rte_fib.h b/lib/librte_fib/rte_fib.h
-index af3bbf07ee..84ee774d2d 100644
---- a/lib/librte_fib/rte_fib.h
-+++ b/lib/librte_fib/rte_fib.h
-@@ -9,4 +9,11 @@
- /**
-  * @file
-+ *
-+ * RTE FIB library.
-+ *
-+ * @warning
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-+ *
-  * FIB (Forwarding information base) implementation
-  * for IPv4 Longest Prefix Match
-diff --git a/lib/librte_fib/rte_fib6.h b/lib/librte_fib/rte_fib6.h
-index 66c71c84c9..bbfcf23a85 100644
---- a/lib/librte_fib/rte_fib6.h
-+++ b/lib/librte_fib/rte_fib6.h
-@@ -9,4 +9,11 @@
- /**
-  * @file
-+ *
-+ * RTE FIB6 library.
-+ *
-+ * @warning
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-+ *
-  * FIB (Forwarding information base) implementation
-  * for IPv6 Longest Prefix Match
@@ -152 +83 @@
-index 74d1ecaf50..82ea92b6a6 100644
+index 01e88e543a..10b39ac7b1 100644
@@ -167,130 +97,0 @@
-diff --git a/lib/librte_graph/rte_graph.h b/lib/librte_graph/rte_graph.h
-index 9a26ffc185..b32c4bc217 100644
---- a/lib/librte_graph/rte_graph.h
-+++ b/lib/librte_graph/rte_graph.h
-@@ -10,5 +10,6 @@
-  *
-  * @warning
-- * @b EXPERIMENTAL: this API may change without prior notice
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-  *
-  * Graph architecture abstracts the data processing functions as
-diff --git a/lib/librte_graph/rte_graph_worker.h b/lib/librte_graph/rte_graph_worker.h
-index 4c3ddcbdeb..eef77f732a 100644
---- a/lib/librte_graph/rte_graph_worker.h
-+++ b/lib/librte_graph/rte_graph_worker.h
-@@ -10,5 +10,6 @@
-  *
-  * @warning
-- * @b EXPERIMENTAL: this API may change without prior notice
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-  *
-  * This API allows a worker thread to walk over a graph and nodes to create,
-diff --git a/lib/librte_ipsec/rte_ipsec.h b/lib/librte_ipsec/rte_ipsec.h
-index 6666cf7619..de05f4e932 100644
---- a/lib/librte_ipsec/rte_ipsec.h
-+++ b/lib/librte_ipsec/rte_ipsec.h
-@@ -8,7 +8,11 @@
- /**
-  * @file rte_ipsec.h
-- * @b EXPERIMENTAL: this API may change without prior notice
-  *
-  * RTE IPsec support.
-+ *
-+ * @warning
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-+ *
-  * librte_ipsec provides a framework for data-path IPsec protocol
-  * processing (ESP/AH).
-diff --git a/lib/librte_node/rte_node_eth_api.h b/lib/librte_node/rte_node_eth_api.h
-index e9a53afe5d..4e28f86d77 100644
---- a/lib/librte_node/rte_node_eth_api.h
-+++ b/lib/librte_node/rte_node_eth_api.h
-@@ -10,5 +10,6 @@
-  *
-  * @warning
-- * @b EXPERIMENTAL: this API may change without prior notice
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-  *
-  * This API allows to setup ethdev_rx and ethdev_tx nodes
-diff --git a/lib/librte_node/rte_node_ip4_api.h b/lib/librte_node/rte_node_ip4_api.h
-index 31a752b00b..eb9ebd5f89 100644
---- a/lib/librte_node/rte_node_ip4_api.h
-+++ b/lib/librte_node/rte_node_ip4_api.h
-@@ -10,5 +10,6 @@
-  *
-  * @warning
-- * @b EXPERIMENTAL: this API may change without prior notice
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-  *
-  * This API allows to do control path functions of ip4_* nodes
-diff --git a/lib/librte_rcu/rte_rcu_qsbr.h b/lib/librte_rcu/rte_rcu_qsbr.h
-index fd4eb52b7f..a98e8f0f82 100644
---- a/lib/librte_rcu/rte_rcu_qsbr.h
-+++ b/lib/librte_rcu/rte_rcu_qsbr.h
-@@ -8,5 +8,10 @@
- /**
-  * @file
-- * RTE Quiescent State Based Reclamation (QSBR)
-+ *
-+ * RTE Quiescent State Based Reclamation (QSBR).
-+ *
-+ * @warning
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-  *
-  * Quiescent State (QS) is any point in the thread execution
-diff --git a/lib/librte_rib/rte_rib.h b/lib/librte_rib/rte_rib.h
-index 6b70de980a..da558c417e 100644
---- a/lib/librte_rib/rte_rib.h
-+++ b/lib/librte_rib/rte_rib.h
-@@ -9,4 +9,11 @@
- /**
-  * @file
-+ *
-+ * RTE RIB library.
-+ *
-+ * @warning
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-+ *
-  * Level compressed tree implementation for IPv4 Longest Prefix Match
-  */
-diff --git a/lib/librte_rib/rte_rib6.h b/lib/librte_rib/rte_rib6.h
-index 871457138d..4b284c913c 100644
---- a/lib/librte_rib/rte_rib6.h
-+++ b/lib/librte_rib/rte_rib6.h
-@@ -9,4 +9,11 @@
- /**
-  * @file
-+ *
-+ * RTE rib6 library.
-+ *
-+ * @warning
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-+ *
-  * Level compressed tree implementation for IPv6 Longest Prefix Match
-  */
-diff --git a/lib/librte_stack/rte_stack.h b/lib/librte_stack/rte_stack.h
-index 27ddb199e5..abf6420766 100644
---- a/lib/librte_stack/rte_stack.h
-+++ b/lib/librte_stack/rte_stack.h
-@@ -5,7 +5,10 @@
- /**
-  * @file rte_stack.h
-- * @b EXPERIMENTAL: this API may change without prior notice
-  *
-- * RTE Stack
-+ * RTE Stack.
-+ *
-+ * @warning
-+ * @b EXPERIMENTAL:
-+ * All functions in this file may be changed or removed without prior notice.
-  *
-  * librte_stack provides an API for configuration and use of a bounded stack of
@@ -298 +99 @@
-index eb7f2c917c..d13010b8fb 100644
+index 119db16fee..41c211dea5 100644
@@ -301,2 +102 @@
-@@ -21,9 +21,11 @@
- 
+@@ -10,5 +10,10 @@
@@ -304,3 +103,0 @@
-- * @warning
-- * @b EXPERIMENTAL: all functions in this file may change without prior notice
-- *


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'rawdev: remove remaining experimental tags' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (20 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'lib: remind experimental status in headers' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'eal/armv8: fix timer frequency calibration with PMU' " Kevin Traynor
                   ` (2 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Hemant Agrawal
  Cc: Thomas Monjalon, Ferruh Yigit, David Marchand, Shreyansh Jain,
	dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From f6a0e22733af67a597aa6f9b9a418691273c5e95 Mon Sep 17 00:00:00 2001
From: Hemant Agrawal <hemant.agrawal@nxp.com>
Date: Tue, 7 Jul 2020 14:24:07 +0530
Subject: [PATCH] rawdev: remove remaining experimental tags

[ upstream commit c843fca96c849bd85204707e791accb57adb9e59 ]

The experimental tags were removed, but the comment
is still having API classification as EXPERIMENTAL

Fixes: 931cc531aad2 ("rawdev: remove experimental tag")

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: David Marchand <david.marchand@redhat.com>
---
 MAINTAINERS                        | 2 +-
 lib/librte_rawdev/rte_rawdev.h     | 3 ---
 lib/librte_rawdev/rte_rawdev_pmd.h | 3 ---
 3 files changed, 1 insertion(+), 7 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 6732dd3697..16c04e8a13 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -407,5 +407,5 @@ F: test/test/test_event_crypto_adapter.c
 F: doc/guides/prog_guide/event_crypto_adapter.rst
 
-Raw device API - EXPERIMENTAL
+Raw device API
 M: Shreyansh Jain <shreyansh.jain@nxp.com>
 M: Hemant Agrawal <hemant.agrawal@nxp.com>
diff --git a/lib/librte_rawdev/rte_rawdev.h b/lib/librte_rawdev/rte_rawdev.h
index ed011ca228..7a1f3213e9 100644
--- a/lib/librte_rawdev/rte_rawdev.h
+++ b/lib/librte_rawdev/rte_rawdev.h
@@ -13,7 +13,4 @@
  * This API allow applications to configure and use generic devices having
  * no specific type already available in DPDK.
- *
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
  */
 
diff --git a/lib/librte_rawdev/rte_rawdev_pmd.h b/lib/librte_rawdev/rte_rawdev_pmd.h
index 5e6cf1d164..e893ce928e 100644
--- a/lib/librte_rawdev/rte_rawdev_pmd.h
+++ b/lib/librte_rawdev/rte_rawdev_pmd.h
@@ -12,7 +12,4 @@
  * Driver facing APIs for a raw device. These are not to be called directly by
  * any application.
- *
- * @warning
- * @b EXPERIMENTAL: this API may change without prior notice
  */
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.283430071 +0100
+++ 0023-rawdev-remove-remaining-experimental-tags.patch	2020-07-17 17:17:00.003770932 +0100
@@ -1 +1 @@
-From c843fca96c849bd85204707e791accb57adb9e59 Mon Sep 17 00:00:00 2001
+From f6a0e22733af67a597aa6f9b9a418691273c5e95 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c843fca96c849bd85204707e791accb57adb9e59 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -23 +24 @@
-index 27fcd6d648..6ba02d73aa 100644
+index 6732dd3697..16c04e8a13 100644
@@ -26 +27 @@
-@@ -491,5 +491,5 @@ F: app/test/test_event_crypto_adapter.c
+@@ -407,5 +407,5 @@ F: test/test/test_event_crypto_adapter.c
@@ -31 +32 @@
- M: Nipun Gupta <nipun.gupta@nxp.com>
+ M: Shreyansh Jain <shreyansh.jain@nxp.com>
@@ -46 +47 @@
-index cb3555ab50..4395a2182d 100644
+index 5e6cf1d164..e893ce928e 100644


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'eal/armv8: fix timer frequency calibration with PMU' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (21 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'rawdev: remove remaining experimental tags' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'vfio: remove unused variable' " Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'eal: fix uuid header dependencies' " Kevin Traynor
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Honnappa Nagarahalli
  Cc: Ruifeng Wang, Dharmik Thakkar, Phil Yang, Jerin Jacob, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From e3245981b3c7969197874d14599482fb54c96a67 Mon Sep 17 00:00:00 2001
From: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Date: Fri, 26 Jun 2020 15:35:01 -0500
Subject: [PATCH] eal/armv8: fix timer frequency calibration with PMU

[ upstream commit 97c910139baf007b729388b0c3c24b894e4b6d3e ]

get_tsc_freq uses 'nanosleep' system call to calculate the CPU
frequency. However, 'nanosleep' results in the process getting
un-scheduled. The kernel saves and restores the PMU state. This
ensures that the PMU cycles are not counted towards a sleeping
process. When RTE_ARM_EAL_RDTSC_USE_PMU is defined, this results
in incorrect CPU frequency calculation. This logic is replaced
with generic counter based loop.

Bugzilla ID: 450
Fixes: f91bcbb2d9a6 ("eal/armv8: use high-resolution cycle counter")

Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
---
 lib/librte_eal/common/arch/arm/rte_cycles.c   | 27 +++++++++--
 .../common/include/arch/arm/rte_cycles_64.h   | 45 ++++++++++++++++---
 2 files changed, 63 insertions(+), 9 deletions(-)

diff --git a/lib/librte_eal/common/arch/arm/rte_cycles.c b/lib/librte_eal/common/arch/arm/rte_cycles.c
index 3500d523ef..5bd29b24b1 100644
--- a/lib/librte_eal/common/arch/arm/rte_cycles.c
+++ b/lib/librte_eal/common/arch/arm/rte_cycles.c
@@ -4,4 +4,5 @@
 
 #include "eal_private.h"
+#include "rte_cycles.h"
 
 uint64_t
@@ -9,7 +10,27 @@ get_tsc_freq_arch(void)
 {
 #if defined RTE_ARCH_ARM64 && !defined RTE_ARM_EAL_RDTSC_USE_PMU
-	uint64_t freq;
-	asm volatile("mrs %0, cntfrq_el0" : "=r" (freq));
-	return freq;
+	return __rte_arm64_cntfrq();
+#elif defined RTE_ARCH_ARM64 && defined RTE_ARM_EAL_RDTSC_USE_PMU
+#define CYC_PER_1MHZ 1E6
+	/* Use the generic counter ticks to calculate the PMU
+	 * cycle frequency.
+	 */
+	uint64_t ticks;
+	uint64_t start_ticks, cur_ticks;
+	uint64_t start_pmu_cycles, end_pmu_cycles;
+
+	/* Number of ticks for 1/10 second */
+	ticks = __rte_arm64_cntfrq() / 10;
+
+	start_ticks = __rte_arm64_cntvct_precise();
+	start_pmu_cycles = rte_rdtsc_precise();
+	do {
+		cur_ticks = __rte_arm64_cntvct();
+	} while ((cur_ticks - start_ticks) < ticks);
+	end_pmu_cycles = rte_rdtsc_precise();
+
+	/* Adjust the cycles to next 1Mhz */
+	return RTE_ALIGN_MUL_CEIL(end_pmu_cycles - start_pmu_cycles,
+			CYC_PER_1MHZ) * 10;
 #else
 	return 0;
diff --git a/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h b/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h
index da557b6a10..e41f9dbd62 100644
--- a/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h
+++ b/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h
@@ -1,4 +1,5 @@
 /* SPDX-License-Identifier: BSD-3-Clause
  * Copyright(c) 2015 Cavium, Inc
+ * Copyright(c) 2020 Arm Limited
  */
 
@@ -12,4 +13,31 @@ extern "C" {
 #include "generic/rte_cycles.h"
 
+/** Read generic counter frequency */
+static __rte_always_inline uint64_t
+__rte_arm64_cntfrq(void)
+{
+	uint64_t freq;
+
+	asm volatile("mrs %0, cntfrq_el0" : "=r" (freq));
+	return freq;
+}
+
+/** Read generic counter */
+static __rte_always_inline uint64_t
+__rte_arm64_cntvct(void)
+{
+	uint64_t tsc;
+
+	asm volatile("mrs %0, cntvct_el0" : "=r" (tsc));
+	return tsc;
+}
+
+static __rte_always_inline uint64_t
+__rte_arm64_cntvct_precise(void)
+{
+	asm volatile("isb" : : : "memory");
+	return __rte_arm64_cntvct();
+}
+
 /**
  * Read the time base register.
@@ -26,8 +54,5 @@ static inline uint64_t
 rte_rdtsc(void)
 {
-	uint64_t tsc;
-
-	asm volatile("mrs %0, cntvct_el0" : "=r" (tsc));
-	return tsc;
+	return __rte_arm64_cntvct();
 }
 #else
@@ -50,6 +75,8 @@ rte_rdtsc(void)
  *
  */
-static inline uint64_t
-rte_rdtsc(void)
+
+/** Read PMU cycle counter */
+static __rte_always_inline uint64_t
+__rte_arm64_pmccntr(void)
 {
 	uint64_t tsc;
@@ -58,4 +85,10 @@ rte_rdtsc(void)
 	return tsc;
 }
+
+static inline uint64_t
+rte_rdtsc(void)
+{
+	return __rte_arm64_pmccntr();
+}
 #endif
 
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.342394750 +0100
+++ 0024-eal-armv8-fix-timer-frequency-calibration-with-PMU.patch	2020-07-17 17:17:00.004770910 +0100
@@ -1 +1 @@
-From 97c910139baf007b729388b0c3c24b894e4b6d3e Mon Sep 17 00:00:00 2001
+From e3245981b3c7969197874d14599482fb54c96a67 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 97c910139baf007b729388b0c3c24b894e4b6d3e ]
+
@@ -16 +17,0 @@
-Cc: stable@dpdk.org
@@ -24,2 +25,2 @@
- lib/librte_eal/arm/include/rte_cycles_64.h | 45 +++++++++++++++++++---
- lib/librte_eal/arm/rte_cycles.c            | 27 +++++++++++--
+ lib/librte_eal/common/arch/arm/rte_cycles.c   | 27 +++++++++--
+ .../common/include/arch/arm/rte_cycles_64.h   | 45 ++++++++++++++++---
@@ -28 +29,42 @@
-diff --git a/lib/librte_eal/arm/include/rte_cycles_64.h b/lib/librte_eal/arm/include/rte_cycles_64.h
+diff --git a/lib/librte_eal/common/arch/arm/rte_cycles.c b/lib/librte_eal/common/arch/arm/rte_cycles.c
+index 3500d523ef..5bd29b24b1 100644
+--- a/lib/librte_eal/common/arch/arm/rte_cycles.c
++++ b/lib/librte_eal/common/arch/arm/rte_cycles.c
+@@ -4,4 +4,5 @@
+ 
+ #include "eal_private.h"
++#include "rte_cycles.h"
+ 
+ uint64_t
+@@ -9,7 +10,27 @@ get_tsc_freq_arch(void)
+ {
+ #if defined RTE_ARCH_ARM64 && !defined RTE_ARM_EAL_RDTSC_USE_PMU
+-	uint64_t freq;
+-	asm volatile("mrs %0, cntfrq_el0" : "=r" (freq));
+-	return freq;
++	return __rte_arm64_cntfrq();
++#elif defined RTE_ARCH_ARM64 && defined RTE_ARM_EAL_RDTSC_USE_PMU
++#define CYC_PER_1MHZ 1E6
++	/* Use the generic counter ticks to calculate the PMU
++	 * cycle frequency.
++	 */
++	uint64_t ticks;
++	uint64_t start_ticks, cur_ticks;
++	uint64_t start_pmu_cycles, end_pmu_cycles;
++
++	/* Number of ticks for 1/10 second */
++	ticks = __rte_arm64_cntfrq() / 10;
++
++	start_ticks = __rte_arm64_cntvct_precise();
++	start_pmu_cycles = rte_rdtsc_precise();
++	do {
++		cur_ticks = __rte_arm64_cntvct();
++	} while ((cur_ticks - start_ticks) < ticks);
++	end_pmu_cycles = rte_rdtsc_precise();
++
++	/* Adjust the cycles to next 1Mhz */
++	return RTE_ALIGN_MUL_CEIL(end_pmu_cycles - start_pmu_cycles,
++			CYC_PER_1MHZ) * 10;
+ #else
+ 	return 0;
+diff --git a/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h b/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h
@@ -30,2 +72,2 @@
---- a/lib/librte_eal/arm/include/rte_cycles_64.h
-+++ b/lib/librte_eal/arm/include/rte_cycles_64.h
+--- a/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h
++++ b/lib/librte_eal/common/include/arch/arm/rte_cycles_64.h
@@ -102,41 +143,0 @@
-diff --git a/lib/librte_eal/arm/rte_cycles.c b/lib/librte_eal/arm/rte_cycles.c
-index 3500d523ef..5bd29b24b1 100644
---- a/lib/librte_eal/arm/rte_cycles.c
-+++ b/lib/librte_eal/arm/rte_cycles.c
-@@ -4,4 +4,5 @@
- 
- #include "eal_private.h"
-+#include "rte_cycles.h"
- 
- uint64_t
-@@ -9,7 +10,27 @@ get_tsc_freq_arch(void)
- {
- #if defined RTE_ARCH_ARM64 && !defined RTE_ARM_EAL_RDTSC_USE_PMU
--	uint64_t freq;
--	asm volatile("mrs %0, cntfrq_el0" : "=r" (freq));
--	return freq;
-+	return __rte_arm64_cntfrq();
-+#elif defined RTE_ARCH_ARM64 && defined RTE_ARM_EAL_RDTSC_USE_PMU
-+#define CYC_PER_1MHZ 1E6
-+	/* Use the generic counter ticks to calculate the PMU
-+	 * cycle frequency.
-+	 */
-+	uint64_t ticks;
-+	uint64_t start_ticks, cur_ticks;
-+	uint64_t start_pmu_cycles, end_pmu_cycles;
-+
-+	/* Number of ticks for 1/10 second */
-+	ticks = __rte_arm64_cntfrq() / 10;
-+
-+	start_ticks = __rte_arm64_cntvct_precise();
-+	start_pmu_cycles = rte_rdtsc_precise();
-+	do {
-+		cur_ticks = __rte_arm64_cntvct();
-+	} while ((cur_ticks - start_ticks) < ticks);
-+	end_pmu_cycles = rte_rdtsc_precise();
-+
-+	/* Adjust the cycles to next 1Mhz */
-+	return RTE_ALIGN_MUL_CEIL(end_pmu_cycles - start_pmu_cycles,
-+			CYC_PER_1MHZ) * 10;
- #else
- 	return 0;


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'vfio: remove unused variable' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (22 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'eal/armv8: fix timer frequency calibration with PMU' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  2020-07-17 16:32 ` [dpdk-stable] patch 'eal: fix uuid header dependencies' " Kevin Traynor
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Yunjian Wang; +Cc: David Marchand, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/68a6327bebe973559f6f49266e3c24e5b41e9699

Thanks.

Kevin.

---
From 68a6327bebe973559f6f49266e3c24e5b41e9699 Mon Sep 17 00:00:00 2001
From: Yunjian Wang <wangyunjian@huawei.com>
Date: Sat, 16 May 2020 15:58:39 +0800
Subject: [PATCH] vfio: remove unused variable

[ upstream commit f4823a3982fd62993a1a128c2a0396cdbe01be8a ]

The 'group_status' has never been used and can be removed.

Fixes: 94c0776b1bad ("vfio: support hotplug")

Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
---
 lib/librte_eal/linuxapp/eal/eal_vfio.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/lib/librte_eal/linuxapp/eal/eal_vfio.c b/lib/librte_eal/linuxapp/eal/eal_vfio.c
index b4619c2117..2f84e0f215 100644
--- a/lib/librte_eal/linuxapp/eal/eal_vfio.c
+++ b/lib/librte_eal/linuxapp/eal/eal_vfio.c
@@ -863,7 +863,4 @@ rte_vfio_release_device(const char *sysfs_base, const char *dev_addr,
 	struct rte_mem_config *mcfg = rte_eal_get_configuration()->mem_config;
 	rte_rwlock_t *mem_lock = &mcfg->memory_hotplug_lock;
-	struct vfio_group_status group_status = {
-			.argsz = sizeof(group_status)
-	};
 	struct vfio_config *vfio_cfg;
 	int vfio_group_fd;
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.396536532 +0100
+++ 0025-vfio-remove-unused-variable.patch	2020-07-17 17:17:00.006770867 +0100
@@ -1 +1 @@
-From f4823a3982fd62993a1a128c2a0396cdbe01be8a Mon Sep 17 00:00:00 2001
+From 68a6327bebe973559f6f49266e3c24e5b41e9699 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit f4823a3982fd62993a1a128c2a0396cdbe01be8a ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org
@@ -14 +15 @@
- lib/librte_eal/linux/eal_vfio.c | 3 ---
+ lib/librte_eal/linuxapp/eal/eal_vfio.c | 3 ---
@@ -17,7 +18,7 @@
-diff --git a/lib/librte_eal/linux/eal_vfio.c b/lib/librte_eal/linux/eal_vfio.c
-index abb12a354a..14358949e9 100644
---- a/lib/librte_eal/linux/eal_vfio.c
-+++ b/lib/librte_eal/linux/eal_vfio.c
-@@ -934,7 +934,4 @@ rte_vfio_release_device(const char *sysfs_base, const char *dev_addr,
- 		    int vfio_dev_fd)
- {
+diff --git a/lib/librte_eal/linuxapp/eal/eal_vfio.c b/lib/librte_eal/linuxapp/eal/eal_vfio.c
+index b4619c2117..2f84e0f215 100644
+--- a/lib/librte_eal/linuxapp/eal/eal_vfio.c
++++ b/lib/librte_eal/linuxapp/eal/eal_vfio.c
+@@ -863,7 +863,4 @@ rte_vfio_release_device(const char *sysfs_base, const char *dev_addr,
+ 	struct rte_mem_config *mcfg = rte_eal_get_configuration()->mem_config;
+ 	rte_rwlock_t *mem_lock = &mcfg->memory_hotplug_lock;


^ permalink raw reply	[flat|nested] 26+ messages in thread

* [dpdk-stable] patch 'eal: fix uuid header dependencies' has been queued to LTS release 18.11.10
  2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
                   ` (23 preceding siblings ...)
  2020-07-17 16:32 ` [dpdk-stable] patch 'vfio: remove unused variable' " Kevin Traynor
@ 2020-07-17 16:32 ` Kevin Traynor
  24 siblings, 0 replies; 26+ messages in thread
From: Kevin Traynor @ 2020-07-17 16:32 UTC (permalink / raw)
  To: Haiyue Wang; +Cc: David Marchand, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/20. 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-queue

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

Thanks.

Kevin.

---
From b0547c427caca1ca7f1173a211c233aaf60aff0d Mon Sep 17 00:00:00 2001
From: Haiyue Wang <haiyue.wang@intel.com>
Date: Fri, 3 Jul 2020 22:57:17 +0800
Subject: [PATCH] eal: fix uuid header dependencies
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

[ upstream commit edca6d883eb0137bc3caf7f93651a67360ebdf96 ]

Add the dependent header files explicitly, so that the user just needs
to include the 'rte_uuid.h' header file directly to avoid compile error:
 (1). rte_uuid.h:97:55: error: unknown type name ‘size_t’
 (2). rte_uuid.h:58:2: error: implicit declaration of function ‘memcpy’

Fixes: 6bc67c497a51 ("eal: add uuid API")

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Acked-by: David Marchand <david.marchand@redhat.com>
---
 lib/librte_eal/common/include/rte_uuid.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/librte_eal/common/include/rte_uuid.h b/lib/librte_eal/common/include/rte_uuid.h
index 16bbed3219..64f37b35be 100644
--- a/lib/librte_eal/common/include/rte_uuid.h
+++ b/lib/librte_eal/common/include/rte_uuid.h
@@ -42,4 +42,6 @@ extern "C" {
 
 #include <stdbool.h>
+#include <stddef.h>
+#include <string.h>
 
 /**
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-07-17 17:17:01.451004551 +0100
+++ 0026-eal-fix-uuid-header-dependencies.patch	2020-07-17 17:17:00.007770846 +0100
@@ -1 +1 @@
-From edca6d883eb0137bc3caf7f93651a67360ebdf96 Mon Sep 17 00:00:00 2001
+From b0547c427caca1ca7f1173a211c233aaf60aff0d Mon Sep 17 00:00:00 2001
@@ -8,0 +9,2 @@
+[ upstream commit edca6d883eb0137bc3caf7f93651a67360ebdf96 ]
+
@@ -15 +16,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
- lib/librte_eal/include/rte_uuid.h | 2 ++
+ lib/librte_eal/common/include/rte_uuid.h | 2 ++
@@ -23,5 +24,5 @@
-diff --git a/lib/librte_eal/include/rte_uuid.h b/lib/librte_eal/include/rte_uuid.h
-index 044afbdfab..8b42e070af 100644
---- a/lib/librte_eal/include/rte_uuid.h
-+++ b/lib/librte_eal/include/rte_uuid.h
-@@ -16,4 +16,6 @@ extern "C" {
+diff --git a/lib/librte_eal/common/include/rte_uuid.h b/lib/librte_eal/common/include/rte_uuid.h
+index 16bbed3219..64f37b35be 100644
+--- a/lib/librte_eal/common/include/rte_uuid.h
++++ b/lib/librte_eal/common/include/rte_uuid.h
+@@ -42,4 +42,6 @@ extern "C" {


^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2020-07-17 16:33 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-17 16:31 [dpdk-stable] patch 'net/netvsc: do not spin forever waiting for reply' has been queued to LTS release 18.11.10 Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'app/testpmd: fix memory leak on error path' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'net/mlx5: fix unreachable MPLS " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'net/failsafe: fix RSS RETA size info' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'net/i40e: enable NEON Rx/Tx in meson' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'net/cxgbe: fix CLIP leak in filter error path' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'bpf: fix add/sub min/max estimations' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'net: fix IPv4 checksum' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'examples: add flush after stats printing' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'bus/vmbus: fix ring buffer mapping' " Kevin Traynor
2020-07-17 16:31 ` [dpdk-stable] patch 'pci: fix address domain format size' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'net/qede: fix multicast drop in promiscuous mode' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'net/mvpp2: fix non-EAL thread support' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'eal/arm: add vcopyq intrinsic for aarch32' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'net/ixgbe: fix include of vector header file' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'net/mlx5: fix iterator type in Rx queue management' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'vhost: fix features definition location' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'mem: fix 32-bit init config with meson' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'examples/eventdev: fix 32-bit coremask' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'devtools: fix path in forbidden token check' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'sched: fix port time rounding' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'lib: remind experimental status in headers' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'rawdev: remove remaining experimental tags' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'eal/armv8: fix timer frequency calibration with PMU' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'vfio: remove unused variable' " Kevin Traynor
2020-07-17 16:32 ` [dpdk-stable] patch 'eal: fix uuid header dependencies' " Kevin Traynor

patches for DPDK stable branches

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git