patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6
@ 2019-12-10 14:58 Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix integer overflow' " Kevin Traynor
                   ` (61 more replies)
  0 siblings, 62 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ting Xu; +Cc: Bernard Iremonger, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/0a72a7de14dcccbf0ec925d5744e43fdbae20c5a

Thanks.

Kevin.

---
From 0a72a7de14dcccbf0ec925d5744e43fdbae20c5a Mon Sep 17 00:00:00 2001
From: Ting Xu <ting.xu@intel.com>
Date: Tue, 15 Oct 2019 09:14:20 +0000
Subject: [PATCH] app/testpmd: fix CRC strip command

[ upstream commit 5e913bdb4f4d05f90ca99467444f11633c78749a ]

This patch fixed the bug that a failure appeared when config
rx_offload crc_strip using command "port config all crc-strip
on|off". The reason is that this command was removed in Commit
e5db17a1e54e. The current command is "port config <port_id>
rx_offload keep_crc on|off" instead.

In this patch, some codes left over about 'crc_strip' are
removed to make the current command clearer.

Fixes: e5db17a1e54e ("app/testpmd: remove duplicated Rx offload commands")

Signed-off-by: Ting Xu <ting.xu@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 app/test-pmd/cmdline.c                      | 12 ++++++------
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |  4 ++--
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index 7f13309ad..7c90457cd 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -875,5 +875,5 @@ static void cmd_help_long_parsed(void *parsed_result,
 			"ipv4_cksum|udp_cksum|tcp_cksum|tcp_lro|qinq_strip|"
 			"outer_ipv4_cksum|macsec_strip|header_split|"
-			"vlan_filter|vlan_extend|jumbo_frame|crc_strip|"
+			"vlan_filter|vlan_extend|jumbo_frame|"
 			"scatter|timestamp|security|keep_crc on|off\n"
 			"     Enable or disable a per port Rx offloading"
@@ -883,5 +883,5 @@ static void cmd_help_long_parsed(void *parsed_result,
 			"ipv4_cksum|udp_cksum|tcp_cksum|tcp_lro|qinq_strip|"
 			"outer_ipv4_cksum|macsec_strip|header_split|"
-			"vlan_filter|vlan_extend|jumbo_frame|crc_strip|"
+			"vlan_filter|vlan_extend|jumbo_frame|"
 			"scatter|timestamp|security|keep_crc on|off\n"
 			"    Enable or disable a per queue Rx offloading"
@@ -17809,5 +17809,5 @@ cmdline_parse_token_string_t cmd_config_per_port_rx_offload_result_offload =
 			   "qinq_strip#outer_ipv4_cksum#macsec_strip#"
 			   "header_split#vlan_filter#vlan_extend#jumbo_frame#"
-			   "crc_strip#scatter#timestamp#security#keep_crc");
+			   "scatter#timestamp#security#keep_crc");
 cmdline_parse_token_string_t cmd_config_per_port_rx_offload_result_on_off =
 	TOKEN_STRING_INITIALIZER
@@ -17885,5 +17885,5 @@ cmdline_parse_inst_t cmd_config_per_port_rx_offload = {
 		    "udp_cksum|tcp_cksum|tcp_lro|qinq_strip|outer_ipv4_cksum|"
 		    "macsec_strip|header_split|vlan_filter|vlan_extend|"
-		    "jumbo_frame|crc_strip|scatter|timestamp|security|keep_crc "
+		    "jumbo_frame|scatter|timestamp|security|keep_crc "
 		    "on|off",
 	.tokens = {
@@ -17935,5 +17935,5 @@ cmdline_parse_token_string_t cmd_config_per_queue_rx_offload_result_offload =
 			   "qinq_strip#outer_ipv4_cksum#macsec_strip#"
 			   "header_split#vlan_filter#vlan_extend#jumbo_frame#"
-			   "crc_strip#scatter#timestamp#security#keep_crc");
+			   "scatter#timestamp#security#keep_crc");
 cmdline_parse_token_string_t cmd_config_per_queue_rx_offload_result_on_off =
 	TOKEN_STRING_INITIALIZER
@@ -17987,5 +17987,5 @@ cmdline_parse_inst_t cmd_config_per_queue_rx_offload = {
 		    "udp_cksum|tcp_cksum|tcp_lro|qinq_strip|outer_ipv4_cksum|"
 		    "macsec_strip|header_split|vlan_filter|vlan_extend|"
-		    "jumbo_frame|crc_strip|scatter|timestamp|security|keep_crc "
+		    "jumbo_frame|scatter|timestamp|security|keep_crc "
 		    "on|off",
 	.tokens = {
diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
index 3db8c4882..37d5d876b 100644
--- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst
+++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
@@ -1602,5 +1602,5 @@ Enable or disable a per port Rx offloading on all Rx queues of a port::
                   qinq_strip, outer_ipv4_cksum, macsec_strip,
                   header_split, vlan_filter, vlan_extend, jumbo_frame,
-                  crc_strip, scatter, timestamp, security, keep_crc
+                  scatter, timestamp, security, keep_crc
 
 This command should be run when the port is stopped, or else it will fail.
@@ -1617,5 +1617,5 @@ Enable or disable a per queue Rx offloading only on a specific Rx queue::
                   qinq_strip, outer_ipv4_cksum, macsec_strip,
                   header_split, vlan_filter, vlan_extend, jumbo_frame,
-                  crc_strip, scatter, timestamp, security, keep_crc
+                  scatter, timestamp, security, keep_crc
 
 This command should be run when the port is stopped, or else it will fail.
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.157144981 +0000
+++ 0001-app-testpmd-fix-CRC-strip-command.patch	2019-12-10 14:49:38.975459203 +0000
@@ -1 +1 @@
-From 5e913bdb4f4d05f90ca99467444f11633c78749a Mon Sep 17 00:00:00 2001
+From 0a72a7de14dcccbf0ec925d5744e43fdbae20c5a Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 5e913bdb4f4d05f90ca99467444f11633c78749a ]
+
@@ -16 +17,0 @@
-Cc: stable@dpdk.org
@@ -26 +27 @@
-index 514372932..a18402de5 100644
+index 7f13309ad..7c90457cd 100644
@@ -29 +30 @@
-@@ -850,5 +850,5 @@ static void cmd_help_long_parsed(void *parsed_result,
+@@ -875,5 +875,5 @@ static void cmd_help_long_parsed(void *parsed_result,
@@ -36 +37 @@
-@@ -858,5 +858,5 @@ static void cmd_help_long_parsed(void *parsed_result,
+@@ -883,5 +883,5 @@ static void cmd_help_long_parsed(void *parsed_result,
@@ -43 +44 @@
-@@ -18072,5 +18072,5 @@ cmdline_parse_token_string_t cmd_config_per_port_rx_offload_result_offload =
+@@ -17809,5 +17809,5 @@ cmdline_parse_token_string_t cmd_config_per_port_rx_offload_result_offload =
@@ -50 +51 @@
-@@ -18152,5 +18152,5 @@ cmdline_parse_inst_t cmd_config_per_port_rx_offload = {
+@@ -17885,5 +17885,5 @@ cmdline_parse_inst_t cmd_config_per_port_rx_offload = {
@@ -57 +58 @@
-@@ -18202,5 +18202,5 @@ cmdline_parse_token_string_t cmd_config_per_queue_rx_offload_result_offload =
+@@ -17935,5 +17935,5 @@ cmdline_parse_token_string_t cmd_config_per_queue_rx_offload_result_offload =
@@ -64 +65 @@
-@@ -18258,5 +18258,5 @@ cmdline_parse_inst_t cmd_config_per_queue_rx_offload = {
+@@ -17987,5 +17987,5 @@ cmdline_parse_inst_t cmd_config_per_queue_rx_offload = {
@@ -72 +73 @@
-index 28b47e6cb..1da60faff 100644
+index 3db8c4882..37d5d876b 100644
@@ -75 +76 @@
-@@ -1654,5 +1654,5 @@ Enable or disable a per port Rx offloading on all Rx queues of a port::
+@@ -1602,5 +1602,5 @@ Enable or disable a per port Rx offloading on all Rx queues of a port::
@@ -82 +83 @@
-@@ -1669,5 +1669,5 @@ Enable or disable a per queue Rx offloading only on a specific Rx queue::
+@@ -1617,5 +1617,5 @@ Enable or disable a per queue Rx offloading only on a specific Rx queue::


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

* [dpdk-stable] patch 'net/i40e: fix integer overflow' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: translate incoming log address to GPA' " Kevin Traynor
                   ` (60 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Xiao Zhang; +Cc: Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/3fdea4b4e1b50cd8d5f46e55510e728ab24294fc

Thanks.

Kevin.

---
From 3fdea4b4e1b50cd8d5f46e55510e728ab24294fc Mon Sep 17 00:00:00 2001
From: Xiao Zhang <xiao.zhang@intel.com>
Date: Tue, 15 Oct 2019 13:29:19 +0800
Subject: [PATCH] net/i40e: fix integer overflow

[ upstream commit 01c12d247e699887926d0b92a102201019b8cd1e ]

When configuring i40e rx queue, the temporary variable to store max
packet length is not big enough which leads to integer overflow issue.
This patch fixes the issue by removing the variable and using the
expression directly since the variable is only used once.

Fixes: 4861cde46116 ("i40e: new poll mode driver")

Signed-off-by: Xiao Zhang <xiao.zhang@intel.com>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/i40e/i40e_rxtx.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
index 4285f8420..9de88a9cc 100644
--- a/drivers/net/i40e/i40e_rxtx.c
+++ b/drivers/net/i40e/i40e_rxtx.c
@@ -2609,5 +2609,5 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq)
 	struct i40e_hw *hw = I40E_VSI_TO_HW(rxq->vsi);
 	struct rte_eth_dev_data *data = pf->dev_data;
-	uint16_t buf_size, len;
+	uint16_t buf_size;
 
 	buf_size = (uint16_t)(rte_pktmbuf_data_room_size(rxq->mp) -
@@ -2632,6 +2632,7 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq)
 	}
 
-	len = hw->func_caps.rx_buf_chain_len * rxq->rx_buf_len;
-	rxq->max_pkt_len = RTE_MIN(len, data->dev_conf.rxmode.max_rx_pkt_len);
+	rxq->max_pkt_len =
+		RTE_MIN((uint32_t)(hw->func_caps.rx_buf_chain_len *
+			rxq->rx_buf_len), data->dev_conf.rxmode.max_rx_pkt_len);
 	if (data->dev_conf.rxmode.offloads & DEV_RX_OFFLOAD_JUMBO_FRAME) {
 		if (rxq->max_pkt_len <= ETHER_MAX_LEN ||
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.245624830 +0000
+++ 0002-net-i40e-fix-integer-overflow.patch	2019-12-10 14:49:38.979459129 +0000
@@ -1 +1 @@
-From 01c12d247e699887926d0b92a102201019b8cd1e Mon Sep 17 00:00:00 2001
+From 3fdea4b4e1b50cd8d5f46e55510e728ab24294fc Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 01c12d247e699887926d0b92a102201019b8cd1e ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index 09c01f67c..40fe4cd5a 100644
+index 4285f8420..9de88a9cc 100644
@@ -24 +25 @@
-@@ -2597,5 +2597,5 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq)
+@@ -2609,5 +2609,5 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq)
@@ -31 +32 @@
-@@ -2620,6 +2620,7 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq)
+@@ -2632,6 +2632,7 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq)
@@ -40 +41 @@
- 		if (rxq->max_pkt_len <= RTE_ETHER_MAX_LEN ||
+ 		if (rxq->max_pkt_len <= ETHER_MAX_LEN ||


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

* [dpdk-stable] patch 'vhost: translate incoming log address to GPA' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix integer overflow' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: fix virtqueue not accessible' " Kevin Traynor
                   ` (59 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Adrian Moreno; +Cc: Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/124653b939870843c02ff11ef39ea84547a7cab3

Thanks.

Kevin.

---
From 124653b939870843c02ff11ef39ea84547a7cab3 Mon Sep 17 00:00:00 2001
From: Adrian Moreno <amorenoz@redhat.com>
Date: Wed, 9 Oct 2019 13:54:30 +0200
Subject: [PATCH] vhost: translate incoming log address to GPA

[ upstream commit fbda9f1459271435df3ea2575ca5845d04733466 ]

When IOMMU is enabled the incoming log address is in IOVA space. In that
case, look in IOTLB table and translate the resulting HVA to GPA.

If IOMMU is not enabled, the incoming log address is already a GPA so no
transformation is needed.

Fixes: 69c90e98f483 ("vhost: enable IOMMU support")

Signed-off-by: Adrian Moreno <amorenoz@redhat.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 lib/librte_vhost/vhost.c      |  1 +
 lib/librte_vhost/vhost.h      | 20 +++++++++++++++++
 lib/librte_vhost/vhost_user.c | 42 ++++++++++++++++++++++++++++++++++-
 3 files changed, 62 insertions(+), 1 deletion(-)

diff --git a/lib/librte_vhost/vhost.c b/lib/librte_vhost/vhost.c
index f7d132cd4..5dc82197b 100644
--- a/lib/librte_vhost/vhost.c
+++ b/lib/librte_vhost/vhost.c
@@ -219,4 +219,5 @@ vring_invalidate(struct virtio_net *dev, struct vhost_virtqueue *vq)
 	vq->avail = NULL;
 	vq->used = NULL;
+	vq->log_guest_addr = 0;
 
 	if (dev->features & (1ULL << VIRTIO_F_IOMMU_PLATFORM))
diff --git a/lib/librte_vhost/vhost.h b/lib/librte_vhost/vhost.h
index bb9cff9f7..daccf5c65 100644
--- a/lib/librte_vhost/vhost.h
+++ b/lib/librte_vhost/vhost.h
@@ -605,4 +605,24 @@ gpa_to_hpa(struct virtio_net *dev, uint64_t gpa, uint64_t size)
 }
 
+static __rte_always_inline uint64_t
+hva_to_gpa(struct virtio_net *dev, uint64_t vva, uint64_t len)
+{
+	struct rte_vhost_mem_region *r;
+	uint32_t i;
+
+	if (unlikely(!dev || !dev->mem))
+		return 0;
+
+	for (i = 0; i < dev->mem->nregions; i++) {
+		r = &dev->mem->regions[i];
+
+		if (vva >= r->host_user_addr &&
+		    vva + len <  r->host_user_addr + r->size) {
+			return r->guest_phys_addr + vva - r->host_user_addr;
+		}
+	}
+	return 0;
+}
+
 static __rte_always_inline struct virtio_net *
 get_device(int vid)
diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
index 0d318cd93..6cc842447 100644
--- a/lib/librte_vhost/vhost_user.c
+++ b/lib/librte_vhost/vhost_user.c
@@ -631,4 +631,37 @@ ring_addr_to_vva(struct virtio_net *dev, struct vhost_virtqueue *vq,
 }
 
+/*
+ * Converts vring log address to GPA
+ * If IOMMU is enabled, the log address is IOVA
+ * If IOMMU not enabled, the log address is already GPA
+ */
+static uint64_t
+translate_log_addr(struct virtio_net *dev, struct vhost_virtqueue *vq,
+		uint64_t log_addr)
+{
+	if (dev->features & (1ULL << VIRTIO_F_IOMMU_PLATFORM)) {
+		const uint64_t exp_size = sizeof(struct vring_used) +
+			sizeof(struct vring_used_elem) * vq->size;
+		uint64_t hva, gpa;
+		uint64_t size = exp_size;
+
+		hva = vhost_iova_to_vva(dev, vq, log_addr,
+					&size, VHOST_ACCESS_RW);
+		if (size != exp_size)
+			return 0;
+
+		gpa = hva_to_gpa(dev, hva, exp_size);
+		if (!gpa) {
+			RTE_LOG(ERR, VHOST_CONFIG,
+				"VQ: Failed to find GPA for log_addr: 0x%" PRIx64 " hva: 0x%" PRIx64 "\n",
+				log_addr, hva);
+			return 0;
+		}
+		return gpa;
+
+	} else
+		return log_addr;
+}
+
 static struct virtio_net *
 translate_ring_addresses(struct virtio_net *dev, int vq_index)
@@ -738,5 +771,12 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)
 	}
 
-	vq->log_guest_addr = addr->log_guest_addr;
+	vq->log_guest_addr =
+		translate_log_addr(dev, vq, addr->log_guest_addr);
+	if (vq->log_guest_addr == 0) {
+		RTE_LOG(DEBUG, VHOST_CONFIG,
+			"(%d) failed to map log_guest_addr .\n",
+			dev->vid);
+		return dev;
+	}
 	vq->access_ok = 1;
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.309102335 +0000
+++ 0003-vhost-translate-incoming-log-address-to-GPA.patch	2019-12-10 14:49:38.983459054 +0000
@@ -1 +1 @@
-From fbda9f1459271435df3ea2575ca5845d04733466 Mon Sep 17 00:00:00 2001
+From 124653b939870843c02ff11ef39ea84547a7cab3 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit fbda9f1459271435df3ea2575ca5845d04733466 ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org
@@ -24 +25 @@
-index cea44df8c..76e753475 100644
+index f7d132cd4..5dc82197b 100644
@@ -27 +28 @@
-@@ -383,4 +383,5 @@ vring_invalidate(struct virtio_net *dev, struct vhost_virtqueue *vq)
+@@ -219,4 +219,5 @@ vring_invalidate(struct virtio_net *dev, struct vhost_virtqueue *vq)
@@ -34 +35 @@
-index 099a0d3f6..7a314717d 100644
+index bb9cff9f7..daccf5c65 100644
@@ -37 +38 @@
-@@ -448,4 +448,24 @@ gpa_to_hpa(struct virtio_net *dev, uint64_t gpa, uint64_t size)
+@@ -605,4 +605,24 @@ gpa_to_hpa(struct virtio_net *dev, uint64_t gpa, uint64_t size)
@@ -63 +64 @@
-index ce4e9fb32..5ae561e55 100644
+index 0d318cd93..6cc842447 100644
@@ -66 +67 @@
-@@ -576,4 +576,37 @@ ring_addr_to_vva(struct virtio_net *dev, struct vhost_virtqueue *vq,
+@@ -631,4 +631,37 @@ ring_addr_to_vva(struct virtio_net *dev, struct vhost_virtqueue *vq,
@@ -104 +105 @@
-@@ -683,5 +716,12 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)
+@@ -738,5 +771,12 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)


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

* [dpdk-stable] patch 'vhost: fix virtqueue not accessible' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix integer overflow' " Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: translate incoming log address to GPA' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: prevent zero copy mode if IOMMU is on' " Kevin Traynor
                   ` (58 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Marvin Liu; +Cc: Adrian Moreno, Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From c287794db0d7043dfea64b66c059899009ba232e Mon Sep 17 00:00:00 2001
From: Marvin Liu <yong.liu@intel.com>
Date: Mon, 4 Nov 2019 18:13:22 +0800
Subject: [PATCH] vhost: fix virtqueue not accessible

[ upstream commit bc42ca1787233617e5ce8a848e268784884a8d07 ]

Log feature is disabled in vhost user, so that log address was invalid
when checking. Check whether log address is valid can work around it.
Log address should also be translated in packed ring virtqueue.

Fixes: fbda9f145927 ("vhost: translate incoming log address to GPA")

Signed-off-by: Marvin Liu <yong.liu@intel.com>
Reviewed-by: Adrian Moreno <amorenoz@redhat.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 lib/librte_vhost/vhost_user.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
index 6cc842447..1e148fb45 100644
--- a/lib/librte_vhost/vhost_user.c
+++ b/lib/librte_vhost/vhost_user.c
@@ -671,9 +671,19 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)
 	uint64_t len, expected_len;
 
+	if (addr->flags & (1 << VHOST_VRING_F_LOG)) {
+		vq->log_guest_addr =
+			translate_log_addr(dev, vq, addr->log_guest_addr);
+		if (vq->log_guest_addr == 0) {
+			RTE_LOG(DEBUG, VHOST_CONFIG,
+				"(%d) failed to map log_guest_addr.\n",
+				dev->vid);
+			return dev;
+		}
+	}
+
 	if (vq_is_packed(dev)) {
 		len = sizeof(struct vring_packed_desc) * vq->size;
 		vq->desc_packed = (struct vring_packed_desc *)(uintptr_t)
 			ring_addr_to_vva(dev, vq, addr->desc_user_addr, &len);
-		vq->log_guest_addr = 0;
 		if (vq->desc_packed == NULL ||
 				len != sizeof(struct vring_packed_desc) *
@@ -771,12 +781,4 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)
 	}
 
-	vq->log_guest_addr =
-		translate_log_addr(dev, vq, addr->log_guest_addr);
-	if (vq->log_guest_addr == 0) {
-		RTE_LOG(DEBUG, VHOST_CONFIG,
-			"(%d) failed to map log_guest_addr .\n",
-			dev->vid);
-		return dev;
-	}
 	vq->access_ok = 1;
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.375703665 +0000
+++ 0004-vhost-fix-virtqueue-not-accessible.patch	2019-12-10 14:49:38.986458998 +0000
@@ -1 +1 @@
-From bc42ca1787233617e5ce8a848e268784884a8d07 Mon Sep 17 00:00:00 2001
+From c287794db0d7043dfea64b66c059899009ba232e Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit bc42ca1787233617e5ce8a848e268784884a8d07 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index 3f649c802..cc660e03a 100644
+index 6cc842447..1e148fb45 100644
@@ -24 +25 @@
-@@ -654,9 +654,19 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)
+@@ -671,9 +671,19 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)
@@ -45 +46 @@
-@@ -754,12 +764,4 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)
+@@ -771,12 +781,4 @@ translate_ring_addresses(struct virtio_net *dev, int vq_index)


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

* [dpdk-stable] patch 'vhost: prevent zero copy mode if IOMMU is on' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (2 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: fix virtqueue not accessible' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix address of first segment' " Kevin Traynor
                   ` (57 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Adrian Moreno; +Cc: Tiwei Bie, Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/798db9cf64613094c8ba3f8a59a52cc5b283f711

Thanks.

Kevin.

---
From 798db9cf64613094c8ba3f8a59a52cc5b283f711 Mon Sep 17 00:00:00 2001
From: Adrian Moreno <amorenoz@redhat.com>
Date: Wed, 9 Oct 2019 13:54:32 +0200
Subject: [PATCH] vhost: prevent zero copy mode if IOMMU is on

[ upstream commit c49197ff29fbd67e19a927683b7100dba602718d ]

The simultaneous use of dequeue_zero_copy and IOMMU is problematic.
Not only because IOVA_VA mode is not supported but also because the
potential invalidation of guest pages while the buffers are in use,
is not handled.

Prevent these two features to be enabled simultaneously.

Fixes: 69c90e98f483 ("vhost: enable IOMMU support")

Signed-off-by: Adrian Moreno <amorenoz@redhat.com>
Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 lib/librte_vhost/socket.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lib/librte_vhost/socket.c b/lib/librte_vhost/socket.c
index 097995166..9a674956f 100644
--- a/lib/librte_vhost/socket.c
+++ b/lib/librte_vhost/socket.c
@@ -858,4 +858,12 @@ rte_vhost_driver_register(const char *path, uint64_t flags)
 	vsocket->dequeue_zero_copy = flags & RTE_VHOST_USER_DEQUEUE_ZERO_COPY;
 
+	if (vsocket->dequeue_zero_copy &&
+	    (flags & RTE_VHOST_USER_IOMMU_SUPPORT)) {
+		RTE_LOG(ERR, VHOST_CONFIG,
+			"error: enabling dequeue zero copy and IOMMU features "
+			"simultaneously is not supported\n");
+		goto out_mutex;
+	}
+
 	/*
 	 * Set the supported features correctly for the builtin vhost-user
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.447217096 +0000
+++ 0005-vhost-prevent-zero-copy-mode-if-IOMMU-is-on.patch	2019-12-10 14:49:38.987458980 +0000
@@ -1 +1 @@
-From c49197ff29fbd67e19a927683b7100dba602718d Mon Sep 17 00:00:00 2001
+From 798db9cf64613094c8ba3f8a59a52cc5b283f711 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c49197ff29fbd67e19a927683b7100dba602718d ]
+
@@ -14 +15,0 @@
-Cc: stable@dpdk.org
@@ -24 +25 @@
-index 274988c4d..810049c15 100644
+index 097995166..9a674956f 100644
@@ -27 +28 @@
-@@ -872,4 +872,12 @@ rte_vhost_driver_register(const char *path, uint64_t flags)
+@@ -858,4 +858,12 @@ rte_vhost_driver_register(const char *path, uint64_t flags)


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

* [dpdk-stable] patch 'net/i40e: fix address of first segment' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (3 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: prevent zero copy mode if IOMMU is on' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/ixgbe: " Kevin Traynor
                   ` (56 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Joyce Kong; +Cc: Xiao Zhang, Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/2ecdb1da978fb5d3b508f7b2c78fc44c95d6d9e6

Thanks.

Kevin.

---
From 2ecdb1da978fb5d3b508f7b2c78fc44c95d6d9e6 Mon Sep 17 00:00:00 2001
From: Joyce Kong <joyce.kong@arm.com>
Date: Tue, 24 Sep 2019 13:48:44 +0800
Subject: [PATCH] net/i40e: fix address of first segment

[ upstream commit ff4f8e24d535df81557f3dcef64d1aef8251f277 ]

This patch fixes (dereference after null check) coverity issue.
The address of first segmented packets was not set correctly during
reassembling packets which led to this issue.

Coverity issue: 343422, 343403
Fixes: ca74903b75cf ("net/i40e: extract non-x86 specific code from vector driver")

Signed-off-by: Joyce Kong <joyce.kong@arm.com>
Reviewed-by: Xiao Zhang <xiao.zhang@intel.com>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/i40e/i40e_rxtx_vec_neon.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/i40e/i40e_rxtx_vec_neon.c b/drivers/net/i40e/i40e_rxtx_vec_neon.c
index 864eb9a32..deb185fe2 100644
--- a/drivers/net/i40e/i40e_rxtx_vec_neon.c
+++ b/drivers/net/i40e/i40e_rxtx_vec_neon.c
@@ -475,4 +475,5 @@ i40e_recv_scattered_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts,
 		if (i == nb_bufs)
 			return nb_bufs;
+		rxq->pkt_first_seg = rx_pkts[i];
 	}
 	return i + reassemble_packets(rxq, &rx_pkts[i], nb_bufs - i,
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.508633050 +0000
+++ 0006-net-i40e-fix-address-of-first-segment.patch	2019-12-10 14:49:38.988458961 +0000
@@ -1 +1 @@
-From ff4f8e24d535df81557f3dcef64d1aef8251f277 Mon Sep 17 00:00:00 2001
+From 2ecdb1da978fb5d3b508f7b2c78fc44c95d6d9e6 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit ff4f8e24d535df81557f3dcef64d1aef8251f277 ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'net/ixgbe: fix address of first segment' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (4 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix address of first segment' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'doc: fix a common typo in NIC guides' " Kevin Traynor
                   ` (55 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Joyce Kong; +Cc: Xiao Zhang, Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From b7626d6aa7ebf906c6a437d6d3a58e45b2c449b8 Mon Sep 17 00:00:00 2001
From: Joyce Kong <joyce.kong@arm.com>
Date: Tue, 24 Sep 2019 13:48:45 +0800
Subject: [PATCH] net/ixgbe: fix address of first segment

[ upstream commit 648255d43e4a820274cbb02cca3ece445d8de302 ]

This patch fixes (dereference after null check) coverity issue.
The address of first segmented packets was not set correctly during
reassembling packets which led to this issue.

Coverity issue: 13245
Fixes: 8a44c15aa57d ("net/ixgbe: extract non-x86 specific code from vector driver")

Signed-off-by: Joyce Kong <joyce.kong@arm.com>
Reviewed-by: Xiao Zhang <xiao.zhang@intel.com>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c b/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c
index 86fb3afdb..07f2fafe7 100644
--- a/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c
+++ b/drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c
@@ -375,4 +375,5 @@ ixgbe_recv_scattered_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts,
 		if (i == nb_bufs)
 			return nb_bufs;
+		rxq->pkt_first_seg = rx_pkts[i];
 	}
 	return i + reassemble_packets(rxq, &rx_pkts[i], nb_bufs - i,
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.570070793 +0000
+++ 0007-net-ixgbe-fix-address-of-first-segment.patch	2019-12-10 14:49:38.990458924 +0000
@@ -1 +1 @@
-From 648255d43e4a820274cbb02cca3ece445d8de302 Mon Sep 17 00:00:00 2001
+From b7626d6aa7ebf906c6a437d6d3a58e45b2c449b8 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 648255d43e4a820274cbb02cca3ece445d8de302 ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -22 +23 @@
-index eeb825911..26c0ef5ae 100644
+index 86fb3afdb..07f2fafe7 100644
@@ -25 +26 @@
-@@ -376,4 +376,5 @@ ixgbe_recv_scattered_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts,
+@@ -375,4 +375,5 @@ ixgbe_recv_scattered_pkts_vec(void *rx_queue, struct rte_mbuf **rx_pkts,


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

* [dpdk-stable] patch 'doc: fix a common typo in NIC guides' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (5 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/ixgbe: " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'app/testpmd: fix help for loop topology option' " Kevin Traynor
                   ` (54 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Thierry Herbelot; +Cc: Ferruh Yigit, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/3135b799ad5dc0af348efd7377652eff64d96d13

Thanks.

Kevin.

---
From 3135b799ad5dc0af348efd7377652eff64d96d13 Mon Sep 17 00:00:00 2001
From: Thierry Herbelot <thierry.herbelot@6wind.com>
Date: Fri, 18 Oct 2019 17:06:57 +0200
Subject: [PATCH] doc: fix a common typo in NIC guides

[ upstream commit e599bbf442f502fce0671f6b6f39f728b14259a7 ]

'CRC striping' should be spelled 'CRC stripping'.

Fixes: 3eee1f067e7c ("fm10k: add guide")
Fixes: 7a4d9f6676d7 ("doc: add liquidio")
Fixes: f820b5896631 ("doc: add octeontx ethdev driver documentation")
Fixes: 920717e4d8ba ("net/octeontx2: add device start operation")
Fixes: f994cecafdcf ("doc: add ThunderX nicvf")

Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 doc/guides/nics/fm10k.rst    | 4 ++--
 doc/guides/nics/liquidio.rst | 4 ++--
 doc/guides/nics/octeontx.rst | 4 ++--
 doc/guides/nics/thunderx.rst | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/doc/guides/nics/fm10k.rst b/doc/guides/nics/fm10k.rst
index 764e089c8..20a1cde53 100644
--- a/doc/guides/nics/fm10k.rst
+++ b/doc/guides/nics/fm10k.rst
@@ -136,6 +136,6 @@ sent to the app, which can then restart the FM10000 port to resume network
 processing.
 
-CRC striping
-~~~~~~~~~~~~
+CRC stripping
+~~~~~~~~~~~~~
 
 The FM10000 family of NICs strip the CRC for every packets coming into the
diff --git a/doc/guides/nics/liquidio.rst b/doc/guides/nics/liquidio.rst
index e2a38004d..053414672 100644
--- a/doc/guides/nics/liquidio.rst
+++ b/doc/guides/nics/liquidio.rst
@@ -191,6 +191,6 @@ Ring size
 Number of descriptors for Rx/Tx ring should be in the range 128 to 512.
 
-CRC striping
-~~~~~~~~~~~~
+CRC stripping
+~~~~~~~~~~~~~
 
 LiquidIO adapters strip ethernet FCS of every packet coming to the host interface.
diff --git a/doc/guides/nics/octeontx.rst b/doc/guides/nics/octeontx.rst
index f8111d3cc..970874cae 100644
--- a/doc/guides/nics/octeontx.rst
+++ b/doc/guides/nics/octeontx.rst
@@ -162,6 +162,6 @@ as it is the most performance effective way for packet allocation and Tx buffer
 recycling on OCTEON TX SoC platform.
 
-CRC striping
-~~~~~~~~~~~~
+CRC stripping
+~~~~~~~~~~~~~
 
 The OCTEON TX SoC family NICs strip the CRC for every packets coming into the
diff --git a/doc/guides/nics/thunderx.rst b/doc/guides/nics/thunderx.rst
index e84eaafe5..9252e2fb7 100644
--- a/doc/guides/nics/thunderx.rst
+++ b/doc/guides/nics/thunderx.rst
@@ -332,6 +332,6 @@ Limitations
 -----------
 
-CRC striping
-~~~~~~~~~~~~
+CRC stripping
+~~~~~~~~~~~~~
 
 The ThunderX SoC family NICs strip the CRC for every packets coming into the
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.638288522 +0000
+++ 0008-doc-fix-a-common-typo-in-NIC-guides.patch	2019-12-10 14:49:38.992458886 +0000
@@ -1 +1 @@
-From e599bbf442f502fce0671f6b6f39f728b14259a7 Mon Sep 17 00:00:00 2001
+From 3135b799ad5dc0af348efd7377652eff64d96d13 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit e599bbf442f502fce0671f6b6f39f728b14259a7 ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org
@@ -18,6 +19,5 @@
- doc/guides/nics/fm10k.rst     | 4 ++--
- doc/guides/nics/liquidio.rst  | 4 ++--
- doc/guides/nics/octeontx.rst  | 4 ++--
- doc/guides/nics/octeontx2.rst | 4 ++--
- doc/guides/nics/thunderx.rst  | 4 ++--
- 5 files changed, 10 insertions(+), 10 deletions(-)
+ doc/guides/nics/fm10k.rst    | 4 ++--
+ doc/guides/nics/liquidio.rst | 4 ++--
+ doc/guides/nics/octeontx.rst | 4 ++--
+ doc/guides/nics/thunderx.rst | 4 ++--
+ 4 files changed, 8 insertions(+), 8 deletions(-)
@@ -52 +52 @@
-index 012a3ec21..3c19c912d 100644
+index f8111d3cc..970874cae 100644
@@ -64,13 +63,0 @@
-diff --git a/doc/guides/nics/octeontx2.rst b/doc/guides/nics/octeontx2.rst
-index 3b567a55e..fc8a130fb 100644
---- a/doc/guides/nics/octeontx2.rst
-+++ b/doc/guides/nics/octeontx2.rst
-@@ -189,6 +189,6 @@ as it is performance wise most effective way for packet allocation and Tx buffer
- recycling on OCTEON TX2 SoC platform.
- 
--CRC striping
--~~~~~~~~~~~~
-+CRC stripping
-+~~~~~~~~~~~~~
- 
- The OCTEON TX2 SoC family NICs strip the CRC for every packet being received by
@@ -78 +65 @@
-index 53eaec72a..3b75a9a9a 100644
+index e84eaafe5..9252e2fb7 100644


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

* [dpdk-stable] patch 'app/testpmd: fix help for loop topology option' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (6 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'doc: fix a common typo in NIC guides' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/mlx4: remove dependency on libmnl in meson' " Kevin Traynor
                   ` (53 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ciara Power; +Cc: Ferruh Yigit, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/31659623b9139ea7d74e537d20bdfa81b8c2a17d

Thanks.

Kevin.

---
From 31659623b9139ea7d74e537d20bdfa81b8c2a17d Mon Sep 17 00:00:00 2001
From: Ciara Power <ciara.power@intel.com>
Date: Fri, 18 Oct 2019 16:45:40 +0100
Subject: [PATCH] app/testpmd: fix help for loop topology option

[ upstream commit e71df49e08f5b76513b3ee93583b9856a99ba2d8 ]

The testpmd --help option did not show all possible choices for port
topology previously. The loop topology option is now added.

Fixes: 3e2006d6186c ("app/testpmd: add loopback topology")

Signed-off-by: Ciara Power <ciara.power@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 app/test-pmd/parameters.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app/test-pmd/parameters.c b/app/test-pmd/parameters.c
index 38b419767..bfb5834f4 100644
--- a/app/test-pmd/parameters.c
+++ b/app/test-pmd/parameters.c
@@ -140,6 +140,6 @@ usage(char* progname)
 	printf("  --enable-drop-en: enable per queue packet drop.\n");
 	printf("  --disable-rss: disable rss.\n");
-	printf("  --port-topology=N: set port topology (N: paired (default) or "
-	       "chained).\n");
+	printf("  --port-topology=<paired|chained|loop>: set port topology (paired "
+	       "is default).\n");
 	printf("  --forward-mode=N: set forwarding mode (N: %s).\n",
 	       list_pkt_forwarding_modes());
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.704588085 +0000
+++ 0009-app-testpmd-fix-help-for-loop-topology-option.patch	2019-12-10 14:49:38.994458849 +0000
@@ -1 +1 @@
-From e71df49e08f5b76513b3ee93583b9856a99ba2d8 Mon Sep 17 00:00:00 2001
+From 31659623b9139ea7d74e537d20bdfa81b8c2a17d Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit e71df49e08f5b76513b3ee93583b9856a99ba2d8 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index 5e55263eb..9ea87c147 100644
+index 38b419767..bfb5834f4 100644


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

* [dpdk-stable] patch 'net/mlx4: remove dependency on libmnl in meson' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (7 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'app/testpmd: fix help for loop topology option' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/axgbe: fix double unlock' " Kevin Traynor
                   ` (52 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: David Marchand; +Cc: Raslan Darawsheh, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/39a7ab1c14e2ca822b5ff06ed98d1948ed0a6360

Thanks.

Kevin.

---
From 39a7ab1c14e2ca822b5ff06ed98d1948ed0a6360 Mon Sep 17 00:00:00 2001
From: David Marchand <david.marchand@redhat.com>
Date: Wed, 2 Oct 2019 16:24:10 +0200
Subject: [PATCH] net/mlx4: remove dependency on libmnl in meson

[ upstream commit 0224b78eff68525a31e6fb9e51ca3fe1121760bb ]

There is no dependency on this library for mlx4.

Fixes: 1dd7c7e38c19 ("net/mlx4: support meson build")

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Raslan Darawsheh <rasland@mellanox.com>
---
 drivers/net/mlx4/meson.build | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/net/mlx4/meson.build b/drivers/net/mlx4/meson.build
index a416c68f3..4145f5db3 100644
--- a/drivers/net/mlx4/meson.build
+++ b/drivers/net/mlx4/meson.build
@@ -15,5 +15,4 @@ if pmd_dlopen
 endif
 libs = [
-	cc.find_library('mnl', required:false),
 	cc.find_library('mlx4', required:false),
 	cc.find_library('ibverbs', required:false),
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.768316357 +0000
+++ 0010-net-mlx4-remove-dependency-on-libmnl-in-meson.patch	2019-12-10 14:49:38.994458849 +0000
@@ -1 +1 @@
-From 0224b78eff68525a31e6fb9e51ca3fe1121760bb Mon Sep 17 00:00:00 2001
+From 39a7ab1c14e2ca822b5ff06ed98d1948ed0a6360 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 0224b78eff68525a31e6fb9e51ca3fe1121760bb ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org
@@ -14,2 +15,2 @@
- drivers/net/mlx4/meson.build | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ drivers/net/mlx4/meson.build | 1 -
+ 1 file changed, 1 deletion(-)
@@ -18 +19 @@
-index 873edadac..9eb498842 100644
+index a416c68f3..4145f5db3 100644
@@ -21 +22 @@
-@@ -22,5 +22,5 @@ if pmd_dlopen
+@@ -15,5 +15,4 @@ if pmd_dlopen
@@ -23,5 +24,4 @@
- 
--libnames = [ 'mnl', 'mlx4', 'ibverbs' ]
-+libnames = [ 'mlx4', 'ibverbs' ]
- libs = []
- foreach libname:libnames
+ libs = [
+-	cc.find_library('mnl', required:false),
+ 	cc.find_library('mlx4', required:false),
+ 	cc.find_library('ibverbs', required:false),


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

* [dpdk-stable] patch 'net/axgbe: fix double unlock' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (8 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/mlx4: remove dependency on libmnl in meson' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/af_packet: improve Tx statistics accuracy' " Kevin Traynor
                   ` (51 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Pallantla Poornima; +Cc: Ravi Kumar, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/3c53ea193553308b5fc9788b5d32ba2cf5a4b440

Thanks.

Kevin.

---
From 3c53ea193553308b5fc9788b5d32ba2cf5a4b440 Mon Sep 17 00:00:00 2001
From: Pallantla Poornima <pallantlax.poornima@intel.com>
Date: Thu, 19 Sep 2019 12:01:47 +0100
Subject: [PATCH] net/axgbe: fix double unlock

[ upstream commit c8c2296b5974ab369c942cc4cada923193018eb9 ]

One issue caught by Coverity 340835
*unlock: axgbe_phy_set_mode unlocks pdata->phy_mutex
*double_unlock: axgbe_phy_sfp_detect unlocks pdata->phy_mutex
while it is unlocked.

In axgbe_phy_sfp_detect()/axgbe_phy_set_redrv_mode(),
axgbe_phy_get_comm_ownership() and axgbe_phy_put_comm_ownership()
are invoked subsequently.

Currently in axgbe_phy_get_comm_ownership(), during one of the case
'phy_data->comm_owned' is not protected and before returning 0, lock is
not called and unlock is called in axgbe_phy_put_comm_ownership()
directly which is incorrect.

Ideally, the variable 'phy_data->comm_owned' needs to be protected.
During success scenario, lock is called in
axgbe_phy_get_comm_ownership() followed by unlock in
axgbe_phy_put_comm_ownership().  In failure case, unlock is invoked in
axgbe_phy_get_comm_ownership() itself appropriately.

The fix is to protect 'phy_data->comm_owned' in the identified case
ensuring locks/unlocks properly exist.

Coverity issue: 340835
Fixes: a5c7273771e8 ("net/axgbe: add phy programming APIs")

Signed-off-by: Pallantla Poornima <pallantlax.poornima@intel.com>
Acked-by: Ravi Kumar <ravi1.kumar@amd.com>
---
 drivers/net/axgbe/axgbe_phy_impl.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/axgbe/axgbe_phy_impl.c b/drivers/net/axgbe/axgbe_phy_impl.c
index 973177f69..2267c5f81 100644
--- a/drivers/net/axgbe/axgbe_phy_impl.c
+++ b/drivers/net/axgbe/axgbe_phy_impl.c
@@ -413,7 +413,4 @@ static int axgbe_phy_get_comm_ownership(struct axgbe_port *pdata)
 	unsigned int mutex_id;
 
-	if (phy_data->comm_owned)
-		return 0;
-
 	/* The I2C and MDIO/GPIO bus is multiplexed between multiple devices,
 	 * the driver needs to take the software mutex and then the hardware
@@ -422,4 +419,7 @@ static int axgbe_phy_get_comm_ownership(struct axgbe_port *pdata)
 	pthread_mutex_lock(&pdata->phy_mutex);
 
+	if (phy_data->comm_owned)
+		return 0;
+
 	/* Clear the mutexes */
 	XP_IOWRITE(pdata, XP_I2C_MUTEX, AXGBE_MUTEX_RELEASE);
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.834476239 +0000
+++ 0011-net-axgbe-fix-double-unlock.patch	2019-12-10 14:49:38.996458812 +0000
@@ -1 +1 @@
-From c8c2296b5974ab369c942cc4cada923193018eb9 Mon Sep 17 00:00:00 2001
+From 3c53ea193553308b5fc9788b5d32ba2cf5a4b440 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c8c2296b5974ab369c942cc4cada923193018eb9 ]
+
@@ -31 +32,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'net/af_packet: improve Tx statistics accuracy' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (9 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/axgbe: fix double unlock' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/enetc: fix BD ring alignment' " Kevin Traynor
                   ` (50 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Flavia Musatescu; +Cc: Ferruh Yigit, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From f888eb77cf18192cb54bcc7189e2e9206260e59b Mon Sep 17 00:00:00 2001
From: Flavia Musatescu <flavia.musatescu@intel.com>
Date: Fri, 18 Oct 2019 15:24:31 +0100
Subject: [PATCH] net/af_packet: improve Tx statistics accuracy

[ upstream commit d4bda0ab2972cb3fd65fbb2575a51de5a68757cb ]

When sendto call fails and ENOBUFS/EAGAIN error is being set
some of the packets are actually successfully transmitted.
There is no available count of those packets, so in order to
make the statistics more accurate, all the previously enqueued
packets will be considered successful, even though this is not
entirely correct.

Statistics numbers before this update:

Pktgen:
   Total Rx Pkts:               1360084
         Tx Pkts:               2000000
testpmd:
   RX-packets: 1408346  RX-missed: 0       RX-bytes:  84503418
   TX-packets: 526486   TX-errors: 881851  TX-bytes:  31589724

Statistics numbers after this update:

Pktgen:
   Total Rx Pkts:               1329872
         Tx Pkts:               2000000
testpmd:
   RX-packets: 1389156  RX-missed: 0       RX-bytes:  83349360
   TX-packets: 1389156  TX-errors: 0       TX-bytes:  83349360

Fixes: 74b7fc0a0ff1 ("net/af_packet: fix packet bytes counting")

Signed-off-by: Flavia Musatescu <flavia.musatescu@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 drivers/net/af_packet/rte_eth_af_packet.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c
index 2e32b3d3c..90e34c45a 100644
--- a/drivers/net/af_packet/rte_eth_af_packet.c
+++ b/drivers/net/af_packet/rte_eth_af_packet.c
@@ -240,6 +240,12 @@ eth_af_packet_tx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
 
 	/* kick-off transmits */
-	if (sendto(pkt_q->sockfd, NULL, 0, MSG_DONTWAIT, NULL, 0) == -1) {
-		/* error sending -- no packets transmitted */
+	if (sendto(pkt_q->sockfd, NULL, 0, MSG_DONTWAIT, NULL, 0) == -1 &&
+			errno != ENOBUFS && errno != EAGAIN) {
+		/*
+		 * In case of a ENOBUFS/EAGAIN error all of the enqueued
+		 * packets will be considered successful even though only some
+		 * are sent.
+		 */
+
 		num_tx = 0;
 		num_tx_bytes = 0;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.902280705 +0000
+++ 0012-net-af_packet-improve-Tx-statistics-accuracy.patch	2019-12-10 14:49:38.997458793 +0000
@@ -1 +1 @@
-From d4bda0ab2972cb3fd65fbb2575a51de5a68757cb Mon Sep 17 00:00:00 2001
+From f888eb77cf18192cb54bcc7189e2e9206260e59b Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit d4bda0ab2972cb3fd65fbb2575a51de5a68757cb ]
+
@@ -32 +33,0 @@
-Cc: stable@dpdk.org
@@ -41 +42 @@
-index dce76b04e..5b71db707 100644
+index 2e32b3d3c..90e34c45a 100644
@@ -44 +45 @@
-@@ -245,6 +245,12 @@ eth_af_packet_tx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
+@@ -240,6 +240,12 @@ eth_af_packet_tx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)


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

* [dpdk-stable] patch 'net/enetc: fix BD ring alignment' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (10 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/af_packet: improve Tx statistics accuracy' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'bus/fslmc: fix global variable multiple definitions' " Kevin Traynor
                   ` (49 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Gagandeep Singh; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From ad6f6c69be6e487d254dcd4cf495841115e913cc Mon Sep 17 00:00:00 2001
From: Gagandeep Singh <g.singh@nxp.com>
Date: Wed, 23 Oct 2019 11:35:59 +0530
Subject: [PATCH] net/enetc: fix BD ring alignment

[ upstream commit 896d9372062e2f63033a607cc5893111e057cd98 ]

enetc BD rings should be aligned to 128
instead of RTE_CACHE_LINE_SIZE.

Fixes: 469c6111a799 ("net/enetc: enable Rx and Tx")

Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
---
 drivers/net/enetc/base/enetc_hw.h | 3 +++
 drivers/net/enetc/enetc_ethdev.c  | 8 ++++----
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/net/enetc/base/enetc_hw.h b/drivers/net/enetc/base/enetc_hw.h
index f36fa11e0..478731d8d 100644
--- a/drivers/net/enetc/base/enetc_hw.h
+++ b/drivers/net/enetc/base/enetc_hw.h
@@ -13,4 +13,7 @@
 #define ENETC_DEV_ID		0xe100
 
+/* BD RING ALIGNMENT */
+#define ENETC_BD_RING_ALIGN	128
+
 /* ENETC register block BAR */
 #define ENETC_BAR_REGS			0x0
diff --git a/drivers/net/enetc/enetc_ethdev.c b/drivers/net/enetc/enetc_ethdev.c
index a21205af0..2cc851751 100644
--- a/drivers/net/enetc/enetc_ethdev.c
+++ b/drivers/net/enetc/enetc_ethdev.c
@@ -303,10 +303,10 @@ enetc_alloc_txbdr(struct enetc_bdr *txr, uint16_t nb_desc)
 
 	size = nb_desc * sizeof(struct enetc_swbd);
-	txr->q_swbd = rte_malloc(NULL, size, RTE_CACHE_LINE_SIZE);
+	txr->q_swbd = rte_malloc(NULL, size, ENETC_BD_RING_ALIGN);
 	if (txr->q_swbd == NULL)
 		return -ENOMEM;
 
 	size = nb_desc * sizeof(struct enetc_tx_bd);
-	txr->bd_base = rte_malloc(NULL, size, RTE_CACHE_LINE_SIZE);
+	txr->bd_base = rte_malloc(NULL, size, ENETC_BD_RING_ALIGN);
 	if (txr->bd_base == NULL) {
 		rte_free(txr->q_swbd);
@@ -454,10 +454,10 @@ enetc_alloc_rxbdr(struct enetc_bdr *rxr,
 
 	size = nb_rx_desc * sizeof(struct enetc_swbd);
-	rxr->q_swbd = rte_malloc(NULL, size, RTE_CACHE_LINE_SIZE);
+	rxr->q_swbd = rte_malloc(NULL, size, ENETC_BD_RING_ALIGN);
 	if (rxr->q_swbd == NULL)
 		return -ENOMEM;
 
 	size = nb_rx_desc * sizeof(union enetc_rx_bd);
-	rxr->bd_base = rte_malloc(NULL, size, RTE_CACHE_LINE_SIZE);
+	rxr->bd_base = rte_malloc(NULL, size, ENETC_BD_RING_ALIGN);
 	if (rxr->bd_base == NULL) {
 		rte_free(rxr->q_swbd);
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:39.970929350 +0000
+++ 0013-net-enetc-fix-BD-ring-alignment.patch	2019-12-10 14:49:38.999458756 +0000
@@ -1 +1 @@
-From 896d9372062e2f63033a607cc5893111e057cd98 Mon Sep 17 00:00:00 2001
+From ad6f6c69be6e487d254dcd4cf495841115e913cc Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 896d9372062e2f63033a607cc5893111e057cd98 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index fd71155ee..2fe7ccb5b 100644
+index f36fa11e0..478731d8d 100644
@@ -31 +32 @@
-index dc05c00ff..4e978348c 100644
+index a21205af0..2cc851751 100644
@@ -34 +35 @@
-@@ -179,10 +179,10 @@ enetc_alloc_txbdr(struct enetc_bdr *txr, uint16_t nb_desc)
+@@ -303,10 +303,10 @@ enetc_alloc_txbdr(struct enetc_bdr *txr, uint16_t nb_desc)
@@ -47 +48 @@
-@@ -326,10 +326,10 @@ enetc_alloc_rxbdr(struct enetc_bdr *rxr,
+@@ -454,10 +454,10 @@ enetc_alloc_rxbdr(struct enetc_bdr *rxr,


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

* [dpdk-stable] patch 'bus/fslmc: fix global variable multiple definitions' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (11 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/enetc: fix BD ring alignment' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/igb: " Kevin Traynor
                   ` (48 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ferruh Yigit; +Cc: Sachin Saxena, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/0616dbe473eba350c00fda7187cbc57a985eeb84

Thanks.

Kevin.

---
From 0616dbe473eba350c00fda7187cbc57a985eeb84 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thu, 5 Sep 2019 15:53:06 +0100
Subject: [PATCH] bus/fslmc: fix global variable multiple definitions

[ upstream commit dc111b5e068172c48f9a19987700cc44cadb6d6b ]

'qman_version' global variable is defined in a header file which was
causing multiple definitions of the variable, fixed it by moving it to
the .c file.

Issue has been detected by '-fno-common' gcc flag.

Fixes: 293c0ca94c36 ("bus/fslmc: support memory backed portals with QBMAN 5.0")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Sachin Saxena <sachin.saxena@nxp.com>
---
 drivers/bus/fslmc/qbman/qbman_portal.c | 2 ++
 drivers/bus/fslmc/qbman/qbman_portal.h | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/bus/fslmc/qbman/qbman_portal.c b/drivers/bus/fslmc/qbman/qbman_portal.c
index bbea37efc..a954307bb 100644
--- a/drivers/bus/fslmc/qbman/qbman_portal.c
+++ b/drivers/bus/fslmc/qbman/qbman_portal.c
@@ -62,4 +62,6 @@ enum qbman_sdqcr_fc {
 static struct qbman_swp *portal_idx_map[MAX_QBMAN_PORTALS];
 
+uint32_t qman_version;
+
 /* Internal Function declaration */
 static int
diff --git a/drivers/bus/fslmc/qbman/qbman_portal.h b/drivers/bus/fslmc/qbman/qbman_portal.h
index 3b0fc540b..628da3ef8 100644
--- a/drivers/bus/fslmc/qbman/qbman_portal.h
+++ b/drivers/bus/fslmc/qbman/qbman_portal.h
@@ -12,5 +12,5 @@
 #include <fsl_qbman_portal.h>
 
-uint32_t qman_version;
+extern uint32_t qman_version;
 #define QMAN_REV_4000   0x04000000
 #define QMAN_REV_4100   0x04010000
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.029762999 +0000
+++ 0014-bus-fslmc-fix-global-variable-multiple-definitions.patch	2019-12-10 14:49:39.001458719 +0000
@@ -1 +1 @@
-From dc111b5e068172c48f9a19987700cc44cadb6d6b Mon Sep 17 00:00:00 2001
+From 0616dbe473eba350c00fda7187cbc57a985eeb84 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit dc111b5e068172c48f9a19987700cc44cadb6d6b ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org
@@ -23 +24 @@
-index e6066ce35..12a718117 100644
+index bbea37efc..a954307bb 100644
@@ -34 +35 @@
-index e54f2661c..0e9de8a1b 100644
+index 3b0fc540b..628da3ef8 100644


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

* [dpdk-stable] patch 'net/igb: fix global variable multiple definitions' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (12 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'bus/fslmc: fix global variable multiple definitions' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'crypto/null: " Kevin Traynor
                   ` (47 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ferruh Yigit; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From e314e7856dc9244a1da2cc6b5204e33c8d1e76c7 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thu, 5 Sep 2019 15:53:07 +0100
Subject: [PATCH] net/igb: fix global variable multiple definitions

[ upstream commit b6730d93a13ace701d4f53adcdbbd7c50a90cfbd ]

Filtering related global variables are defined in a header file which
was causing multiple definitions of the variables, fixed it by moving
them to the .c file.

Issue has been detected by '-fno-common' gcc flag.

Fixes: 22bb13410cb2 ("net/igb: create consistent filter")
Fixes: 424ae915baf0 ("net/e1000: move RSS to flow API")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 drivers/net/e1000/e1000_ethdev.h | 12 ++++++------
 drivers/net/e1000/igb_flow.c     |  7 +++++++
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/drivers/net/e1000/e1000_ethdev.h b/drivers/net/e1000/e1000_ethdev.h
index 78fb61e41..28b3e74f8 100644
--- a/drivers/net/e1000/e1000_ethdev.h
+++ b/drivers/net/e1000/e1000_ethdev.h
@@ -345,15 +345,15 @@ struct igb_flow_mem {
 
 TAILQ_HEAD(igb_ntuple_filter_list, igb_ntuple_filter_ele);
-struct igb_ntuple_filter_list igb_filter_ntuple_list;
+extern struct igb_ntuple_filter_list igb_filter_ntuple_list;
 TAILQ_HEAD(igb_ethertype_filter_list, igb_ethertype_filter_ele);
-struct igb_ethertype_filter_list igb_filter_ethertype_list;
+extern struct igb_ethertype_filter_list igb_filter_ethertype_list;
 TAILQ_HEAD(igb_syn_filter_list, igb_eth_syn_filter_ele);
-struct igb_syn_filter_list igb_filter_syn_list;
+extern struct igb_syn_filter_list igb_filter_syn_list;
 TAILQ_HEAD(igb_flex_filter_list, igb_flex_filter_ele);
-struct igb_flex_filter_list igb_filter_flex_list;
+extern struct igb_flex_filter_list igb_filter_flex_list;
 TAILQ_HEAD(igb_rss_filter_list, igb_rss_conf_ele);
-struct igb_rss_filter_list igb_filter_rss_list;
+extern struct igb_rss_filter_list igb_filter_rss_list;
 TAILQ_HEAD(igb_flow_mem_list, igb_flow_mem);
-struct igb_flow_mem_list igb_flow_list;
+extern struct igb_flow_mem_list igb_flow_list;
 
 extern const struct rte_flow_ops igb_flow_ops;
diff --git a/drivers/net/e1000/igb_flow.c b/drivers/net/e1000/igb_flow.c
index 33683498a..77ac4a5bc 100644
--- a/drivers/net/e1000/igb_flow.c
+++ b/drivers/net/e1000/igb_flow.c
@@ -50,4 +50,11 @@
 #define	IGB_FLEX_RAW_NUM	12
 
+struct igb_flow_mem_list igb_flow_list;
+struct igb_ntuple_filter_list igb_filter_ntuple_list;
+struct igb_ethertype_filter_list igb_filter_ethertype_list;
+struct igb_syn_filter_list igb_filter_syn_list;
+struct igb_flex_filter_list igb_filter_flex_list;
+struct igb_rss_filter_list igb_filter_rss_list;
+
 /**
  * Please aware there's an asumption for all the parsers.
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.101064961 +0000
+++ 0015-net-igb-fix-global-variable-multiple-definitions.patch	2019-12-10 14:49:39.004458663 +0000
@@ -1 +1 @@
-From b6730d93a13ace701d4f53adcdbbd7c50a90cfbd Mon Sep 17 00:00:00 2001
+From e314e7856dc9244a1da2cc6b5204e33c8d1e76c7 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit b6730d93a13ace701d4f53adcdbbd7c50a90cfbd ]
+
@@ -14 +15,0 @@
-Cc: stable@dpdk.org
@@ -23 +24 @@
-index 01ff9433b..1e41ae9de 100644
+index 78fb61e41..28b3e74f8 100644
@@ -26 +27 @@
-@@ -352,15 +352,15 @@ struct igb_flow_mem {
+@@ -345,15 +345,15 @@ struct igb_flow_mem {
@@ -49 +50 @@
-index 4e0b38fcf..31ca9bb1c 100644
+index 33683498a..77ac4a5bc 100644


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

* [dpdk-stable] patch 'crypto/null: fix global variable multiple definitions' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (13 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/igb: " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'crypto/virtio: " Kevin Traynor
                   ` (46 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ferruh Yigit; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/4e74b260f890dc2070c093ef5f991e9985fadc55

Thanks.

Kevin.

---
From 4e74b260f890dc2070c093ef5f991e9985fadc55 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thu, 5 Sep 2019 15:53:08 +0100
Subject: [PATCH] crypto/null: fix global variable multiple definitions

[ upstream commit 2ce24ee7acccd68f3a8e736b67808c33f4902a46 ]

'null_logtype_driver' global variable is defined in a header file which
was causing multiple definitions of the variable, fixed it by moving it
to the .c file.

Issue has been detected by '-fno-common' gcc flag.

Fixes: 735b783d8c2b ("crypto/null: add dynamic logging")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 drivers/crypto/null/null_crypto_pmd.c         | 1 +
 drivers/crypto/null/null_crypto_pmd_private.h | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/crypto/null/null_crypto_pmd.c b/drivers/crypto/null/null_crypto_pmd.c
index 6e29a21a6..1af5da674 100644
--- a/drivers/crypto/null/null_crypto_pmd.c
+++ b/drivers/crypto/null/null_crypto_pmd.c
@@ -11,4 +11,5 @@
 
 static uint8_t cryptodev_driver_id;
+int null_logtype_driver;
 
 /** verify and set session parameters */
diff --git a/drivers/crypto/null/null_crypto_pmd_private.h b/drivers/crypto/null/null_crypto_pmd_private.h
index d5905afd8..ae34ce667 100644
--- a/drivers/crypto/null/null_crypto_pmd_private.h
+++ b/drivers/crypto/null/null_crypto_pmd_private.h
@@ -9,5 +9,5 @@
 /**< Null crypto PMD device name */
 
-int null_logtype_driver;
+extern int null_logtype_driver;
 
 #define NULL_LOG(level, fmt, ...)  \
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.167616835 +0000
+++ 0016-crypto-null-fix-global-variable-multiple-definitions.patch	2019-12-10 14:49:39.005458644 +0000
@@ -1 +1 @@
-From 2ce24ee7acccd68f3a8e736b67808c33f4902a46 Mon Sep 17 00:00:00 2001
+From 4e74b260f890dc2070c093ef5f991e9985fadc55 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 2ce24ee7acccd68f3a8e736b67808c33f4902a46 ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org
@@ -22 +23 @@
-index d5e3064f2..f11636c5f 100644
+index 6e29a21a6..1af5da674 100644
@@ -32 +33 @@
-index d7bfd9cc8..89c4345b6 100644
+index d5905afd8..ae34ce667 100644


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

* [dpdk-stable] patch 'crypto/virtio: fix global variable multiple definitions' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (14 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'crypto/null: " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'compress/octeontx: " Kevin Traynor
                   ` (45 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ferruh Yigit; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From ca40546d47069f5e7edff31c2ecbf5797975fd49 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thu, 5 Sep 2019 15:53:11 +0100
Subject: [PATCH] crypto/virtio: fix global variable multiple definitions

[ upstream commit 2c4496446168b1c97b148f146af4e8c5856f3364 ]

'virtio_hw_internal' global variable is defined in both 'crypto/virtio'
and 'net/virtio' PMDs. This means they share same storage when
application linked with static DPDK library, which is not the intention.

Fixing by adding 'crypto_' prefix to the 'crypto/virtio' driver.

Issue has been detected by '-fno-common' gcc flag.

Fixes: 25500d4b8076 ("crypto/virtio: support device init")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 drivers/crypto/virtio/virtio_pci.c | 4 ++--
 drivers/crypto/virtio/virtio_pci.h | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/crypto/virtio/virtio_pci.c b/drivers/crypto/virtio/virtio_pci.c
index e24ccb607..2e45722f9 100644
--- a/drivers/crypto/virtio/virtio_pci.c
+++ b/drivers/crypto/virtio/virtio_pci.c
@@ -32,5 +32,5 @@
 		(((hw)->use_msix == VIRTIO_MSIX_ENABLED) ? 24 : 20)
 
-struct virtio_hw_internal virtio_hw_internal[RTE_MAX_VIRTIO_CRYPTO];
+struct virtio_hw_internal crypto_virtio_hw_internal[RTE_MAX_VIRTIO_CRYPTO];
 
 static inline int
@@ -453,5 +453,5 @@ vtpci_cryptodev_init(struct rte_pci_device *dev, struct virtio_crypto_hw *hw)
 	if (virtio_read_caps(dev, hw) == 0) {
 		VIRTIO_CRYPTO_INIT_LOG_INFO("modern virtio pci detected.");
-		virtio_hw_internal[hw->dev_id].vtpci_ops =
+		crypto_virtio_hw_internal[hw->dev_id].vtpci_ops =
 					&virtio_crypto_modern_ops;
 		hw->modern = 1;
diff --git a/drivers/crypto/virtio/virtio_pci.h b/drivers/crypto/virtio/virtio_pci.h
index 604ec3662..d9a214dfd 100644
--- a/drivers/crypto/virtio/virtio_pci.h
+++ b/drivers/crypto/virtio/virtio_pci.h
@@ -202,8 +202,8 @@ struct virtio_hw_internal {
 };
 
-#define VTPCI_OPS(hw)	(virtio_hw_internal[(hw)->dev_id].vtpci_ops)
-#define VTPCI_IO(hw)	(&virtio_hw_internal[(hw)->dev_id].io)
+#define VTPCI_OPS(hw)	(crypto_virtio_hw_internal[(hw)->dev_id].vtpci_ops)
+#define VTPCI_IO(hw)	(&crypto_virtio_hw_internal[(hw)->dev_id].io)
 
-extern struct virtio_hw_internal virtio_hw_internal[RTE_MAX_VIRTIO_CRYPTO];
+extern struct virtio_hw_internal crypto_virtio_hw_internal[RTE_MAX_VIRTIO_CRYPTO];
 
 /*
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.233685143 +0000
+++ 0017-crypto-virtio-fix-global-variable-multiple-definitio.patch	2019-12-10 14:49:39.006458625 +0000
@@ -1 +1 @@
-From 2c4496446168b1c97b148f146af4e8c5856f3364 Mon Sep 17 00:00:00 2001
+From ca40546d47069f5e7edff31c2ecbf5797975fd49 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 2c4496446168b1c97b148f146af4e8c5856f3364 ]
+
@@ -15 +16,0 @@
-Cc: stable@dpdk.org
@@ -24 +25 @@
-index 8137b3c5a..f490f6e28 100644
+index e24ccb607..2e45722f9 100644


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

* [dpdk-stable] patch 'compress/octeontx: fix global variable multiple definitions' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (15 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'crypto/virtio: " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'test: " Kevin Traynor
                   ` (44 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ferruh Yigit; +Cc: Ashish Gupta, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From b72c96fde5bb413bfccbaa17335d6964cdf54503 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thu, 5 Sep 2019 15:53:12 +0100
Subject: [PATCH] compress/octeontx: fix global variable multiple definitions

[ upstream commit 4d6194db01f51169181c0af6e6dc5fed042265ad ]

'octtx_zip_logtype_driver' global variable is defined in a header file
which was causing multiple definitions of the variable, fixed it by
moving it to the .c file.

Issue has been detected by '-fno-common' gcc flag.

Fixes: 43e610bb8565 ("compress/octeontx: introduce octeontx zip PMD")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Ashish Gupta <ashishg@marvell.com>
---
 drivers/compress/octeontx/otx_zip.h     | 2 +-
 drivers/compress/octeontx/otx_zip_pmd.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/compress/octeontx/otx_zip.h b/drivers/compress/octeontx/otx_zip.h
index 3abefd1dc..e43f7f5c3 100644
--- a/drivers/compress/octeontx/otx_zip.h
+++ b/drivers/compress/octeontx/otx_zip.h
@@ -18,5 +18,5 @@
 #include <zip_regs.h>
 
-int octtx_zip_logtype_driver;
+extern int octtx_zip_logtype_driver;
 
 /* ZIP VF Control/Status registers (CSRs): */
diff --git a/drivers/compress/octeontx/otx_zip_pmd.c b/drivers/compress/octeontx/otx_zip_pmd.c
index a1651b22e..9e00c8663 100644
--- a/drivers/compress/octeontx/otx_zip_pmd.c
+++ b/drivers/compress/octeontx/otx_zip_pmd.c
@@ -12,4 +12,6 @@
 #include "otx_zip.h"
 
+int octtx_zip_logtype_driver;
+
 static const struct rte_compressdev_capabilities
 				octtx_zip_pmd_capabilities[] = {
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.298120901 +0000
+++ 0018-compress-octeontx-fix-global-variable-multiple-defin.patch	2019-12-10 14:49:39.007458607 +0000
@@ -1 +1 @@
-From 4d6194db01f51169181c0af6e6dc5fed042265ad Mon Sep 17 00:00:00 2001
+From b72c96fde5bb413bfccbaa17335d6964cdf54503 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 4d6194db01f51169181c0af6e6dc5fed042265ad ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'test: fix global variable multiple definitions' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (16 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'compress/octeontx: " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'reciprocal: fix off-by-one with 32-bit divisor' " Kevin Traynor
                   ` (43 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ferruh Yigit; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From dfdfcaaaae230668385c9ef63a077ef78eb56d80 Mon Sep 17 00:00:00 2001
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thu, 5 Sep 2019 15:53:15 +0100
Subject: [PATCH] test: fix global variable multiple definitions

[ upstream commit d170527643bcee1ef35390d8ac57ddccf6621b82 ]

Multiple global variable are defined in multiple unit test files with
same name, but all unit test files are linked into single executable,
which means those variables share same storage which is not the
intention, fixed by making global variables 'static'.

Issue has been detected by '-fno-common' gcc flag.

Fixes: fdeb30fa7102 ("test/bitrate: add unit tests for bitrate library")
Fixes: c3eabff124e6 ("distributor: add unit tests")
Fixes: 0e925aef2779 ("app/test: add EFD functional and perf tests")
Fixes: 359e17bf081f ("app/test: improve hash unit tests")
Fixes: c7eb0972e74b ("test/hash: add lock-free r/w concurrency")
Fixes: 1e3676a06e4c ("test/latency: add unit tests for latencystats library")
Fixes: 0cc67a96e486 ("test/member: add functional and perf tests")
Fixes: e6a14121f4ae ("test/rcu: remove arbitrary limit on max core count")
Fixes: 104dbec2081a ("test/rcu: increase size of core numbers")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
 test/test/test_distributor_perf.c  |  2 +-
 test/test/test_efd.c               |  2 +-
 test/test/test_efd_perf.c          |  6 +++---
 test/test/test_hash_perf.c         | 12 ++++++------
 test/test/test_hash_readwrite_lf.c |  8 ++++----
 test/test/test_member_perf.c       | 16 ++++++++--------
 6 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/test/test/test_distributor_perf.c b/test/test/test_distributor_perf.c
index edf1998ab..928794cfc 100644
--- a/test/test/test_distributor_perf.c
+++ b/test/test/test_distributor_perf.c
@@ -26,5 +26,5 @@ struct worker_stats {
 	volatile unsigned handled_packets;
 } __rte_cache_aligned;
-struct worker_stats worker_stats[RTE_MAX_LCORE];
+static struct worker_stats worker_stats[RTE_MAX_LCORE];
 
 /*
diff --git a/test/test/test_efd.c b/test/test/test_efd.c
index ced091aab..f5313cbd2 100644
--- a/test/test/test_efd.c
+++ b/test/test/test_efd.c
@@ -97,5 +97,5 @@ static struct flow_key keys[5] = {
 };
 /* Array to store the data */
-efd_value_t data[5];
+static efd_value_t data[5];
 
 static inline uint8_t efd_get_all_sockets_bitmask(void)
diff --git a/test/test/test_efd_perf.c b/test/test/test_efd_perf.c
index 1dcb992c6..d47622d5c 100644
--- a/test/test/test_efd_perf.c
+++ b/test/test/test_efd_perf.c
@@ -72,11 +72,11 @@ static uint32_t hashtest_key_lens[] = {
 
 /* Array to store number of cycles per operation */
-uint64_t cycles[NUM_KEYSIZES][NUM_OPERATIONS];
+static uint64_t cycles[NUM_KEYSIZES][NUM_OPERATIONS];
 
 /* Array to store the data */
-efd_value_t data[KEYS_TO_ADD];
+static efd_value_t data[KEYS_TO_ADD];
 
 /* Array to store all input keys */
-uint8_t keys[KEYS_TO_ADD][MAX_KEYSIZE];
+static uint8_t keys[KEYS_TO_ADD][MAX_KEYSIZE];
 
 /* Shuffle the keys that have been added, so lookups will be totally random */
diff --git a/test/test/test_hash_perf.c b/test/test/test_hash_perf.c
index 5648fce02..a438eae6c 100644
--- a/test/test/test_hash_perf.c
+++ b/test/test/test_hash_perf.c
@@ -54,20 +54,20 @@ struct rte_hash *h[NUM_KEYSIZES];
 
 /* Array that stores if a slot is full */
-uint8_t slot_taken[MAX_ENTRIES];
+static uint8_t slot_taken[MAX_ENTRIES];
 
 /* Array to store number of cycles per operation */
-uint64_t cycles[NUM_KEYSIZES][NUM_OPERATIONS][2][2];
+static uint64_t cycles[NUM_KEYSIZES][NUM_OPERATIONS][2][2];
 
 /* Array to store all input keys */
-uint8_t keys[KEYS_TO_ADD][MAX_KEYSIZE];
+static uint8_t keys[KEYS_TO_ADD][MAX_KEYSIZE];
 
 /* Array to store the precomputed hash for 'keys' */
-hash_sig_t signatures[KEYS_TO_ADD];
+static hash_sig_t signatures[KEYS_TO_ADD];
 
 /* Array to store how many busy entries have each bucket */
-uint8_t buckets[NUM_BUCKETS];
+static uint8_t buckets[NUM_BUCKETS];
 
 /* Array to store the positions where keys are added */
-int32_t positions[KEYS_TO_ADD];
+static int32_t positions[KEYS_TO_ADD];
 
 /* Parameters used for hash table in unit test functions. */
diff --git a/test/test/test_hash_readwrite_lf.c b/test/test/test_hash_readwrite_lf.c
index 432e86e0e..8fb56d3f9 100644
--- a/test/test/test_hash_readwrite_lf.c
+++ b/test/test/test_hash_readwrite_lf.c
@@ -43,5 +43,5 @@
 #define BULK_LOOKUP 16
 #define NUM_TEST 3
-unsigned int rwc_core_cnt[NUM_TEST] = {1, 2, 4};
+static unsigned int rwc_core_cnt[NUM_TEST] = {1, 2, 4};
 
 struct rwc_perf {
@@ -56,5 +56,5 @@ struct rwc_perf {
 static struct rwc_perf rwc_lf_results, rwc_non_lf_results;
 
-struct {
+static struct {
 	uint32_t *keys;
 	uint32_t *keys_no_ks;
@@ -77,7 +77,7 @@ static rte_atomic64_t greads;
 static volatile uint8_t writer_done;
 
-uint16_t enabled_core_ids[RTE_MAX_LCORE];
+static uint16_t enabled_core_ids[RTE_MAX_LCORE];
 
-uint8_t *scanned_bkts;
+static uint8_t *scanned_bkts;
 
 static inline int
diff --git a/test/test/test_member_perf.c b/test/test/test_member_perf.c
index 564a2b3c1..e2840f12d 100644
--- a/test/test/test_member_perf.c
+++ b/test/test/test_member_perf.c
@@ -66,16 +66,16 @@ static uint32_t hashtest_key_lens[] = {
 
 /* Array to store number of cycles per operation */
-uint64_t cycles[NUM_TYPE][NUM_KEYSIZES][NUM_OPERATIONS];
-uint64_t false_data[NUM_TYPE][NUM_KEYSIZES];
-uint64_t false_data_bulk[NUM_TYPE][NUM_KEYSIZES];
-uint64_t false_data_multi[NUM_TYPE][NUM_KEYSIZES];
-uint64_t false_data_multi_bulk[NUM_TYPE][NUM_KEYSIZES];
+static uint64_t cycles[NUM_TYPE][NUM_KEYSIZES][NUM_OPERATIONS];
+static uint64_t false_data[NUM_TYPE][NUM_KEYSIZES];
+static uint64_t false_data_bulk[NUM_TYPE][NUM_KEYSIZES];
+static uint64_t false_data_multi[NUM_TYPE][NUM_KEYSIZES];
+static uint64_t false_data_multi_bulk[NUM_TYPE][NUM_KEYSIZES];
 
-uint64_t false_hit[NUM_TYPE][NUM_KEYSIZES];
+static uint64_t false_hit[NUM_TYPE][NUM_KEYSIZES];
 
-member_set_t data[NUM_TYPE][/* Array to store the data */KEYS_TO_ADD];
+static member_set_t data[NUM_TYPE][/* Array to store the data */KEYS_TO_ADD];
 
 /* Array to store all input keys */
-uint8_t keys[KEYS_TO_ADD][MAX_KEYSIZE];
+static uint8_t keys[KEYS_TO_ADD][MAX_KEYSIZE];
 
 /* Shuffle the keys that have been added, so lookups will be totally random */
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.360491873 +0000
+++ 0019-test-fix-global-variable-multiple-definitions.patch	2019-12-10 14:49:39.012458513 +0000
@@ -1 +1 @@
-From d170527643bcee1ef35390d8ac57ddccf6621b82 Mon Sep 17 00:00:00 2001
+From dfdfcaaaae230668385c9ef63a077ef78eb56d80 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit d170527643bcee1ef35390d8ac57ddccf6621b82 ]
+
@@ -22 +23,0 @@
-Cc: stable@dpdk.org
@@ -26,30 +27,12 @@
- app/test/test_bitratestats.c      |  6 +++---
- app/test/test_distributor_perf.c  |  2 +-
- app/test/test_efd.c               |  2 +-
- app/test/test_efd_perf.c          |  6 +++---
- app/test/test_hash_perf.c         | 12 ++++++------
- app/test/test_hash_readwrite_lf.c |  8 ++++----
- app/test/test_latencystats.c      |  6 +++---
- app/test/test_member_perf.c       | 16 ++++++++--------
- app/test/test_rcu_qsbr.c          | 10 +++++-----
- 9 files changed, 34 insertions(+), 34 deletions(-)
-
-diff --git a/app/test/test_bitratestats.c b/app/test/test_bitratestats.c
-index 32b1b0fc0..3a7d9c037 100644
---- a/app/test/test_bitratestats.c
-+++ b/app/test/test_bitratestats.c
-@@ -19,7 +19,7 @@
- #define QUEUE_ID 0
- 
--uint16_t portid;
--struct rte_stats_bitrates *bitrate_data;
--struct rte_ring *ring;
-+static uint16_t portid;
-+static struct rte_stats_bitrates *bitrate_data;
-+static struct rte_ring *ring;
- 
- /* To test whether rte_stats_bitrate_create is successful */
-diff --git a/app/test/test_distributor_perf.c b/app/test/test_distributor_perf.c
-index 664530ff9..f153bcf9b 100644
---- a/app/test/test_distributor_perf.c
-+++ b/app/test/test_distributor_perf.c
+ test/test/test_distributor_perf.c  |  2 +-
+ test/test/test_efd.c               |  2 +-
+ test/test/test_efd_perf.c          |  6 +++---
+ test/test/test_hash_perf.c         | 12 ++++++------
+ test/test/test_hash_readwrite_lf.c |  8 ++++----
+ test/test/test_member_perf.c       | 16 ++++++++--------
+ 6 files changed, 23 insertions(+), 23 deletions(-)
+
+diff --git a/test/test/test_distributor_perf.c b/test/test/test_distributor_perf.c
+index edf1998ab..928794cfc 100644
+--- a/test/test/test_distributor_perf.c
++++ b/test/test/test_distributor_perf.c
@@ -63,5 +46,5 @@
-diff --git a/app/test/test_efd.c b/app/test/test_efd.c
-index 73b304431..a779a71f2 100644
---- a/app/test/test_efd.c
-+++ b/app/test/test_efd.c
-@@ -95,5 +95,5 @@ static struct flow_key keys[5] = {
+diff --git a/test/test/test_efd.c b/test/test/test_efd.c
+index ced091aab..f5313cbd2 100644
+--- a/test/test/test_efd.c
++++ b/test/test/test_efd.c
+@@ -97,5 +97,5 @@ static struct flow_key keys[5] = {
@@ -74 +57 @@
-diff --git a/app/test/test_efd_perf.c b/app/test/test_efd_perf.c
+diff --git a/test/test/test_efd_perf.c b/test/test/test_efd_perf.c
@@ -76,2 +59,2 @@
---- a/app/test/test_efd_perf.c
-+++ b/app/test/test_efd_perf.c
+--- a/test/test/test_efd_perf.c
++++ b/test/test/test_efd_perf.c
@@ -93 +76 @@
-diff --git a/app/test/test_hash_perf.c b/app/test/test_hash_perf.c
+diff --git a/test/test/test_hash_perf.c b/test/test/test_hash_perf.c
@@ -95,2 +78,2 @@
---- a/app/test/test_hash_perf.c
-+++ b/app/test/test_hash_perf.c
+--- a/test/test/test_hash_perf.c
++++ b/test/test/test_hash_perf.c
@@ -124,6 +107,6 @@
-diff --git a/app/test/test_hash_readwrite_lf.c b/app/test/test_hash_readwrite_lf.c
-index 1f2fba41f..97c304054 100644
---- a/app/test/test_hash_readwrite_lf.c
-+++ b/app/test/test_hash_readwrite_lf.c
-@@ -49,5 +49,5 @@
- 
+diff --git a/test/test/test_hash_readwrite_lf.c b/test/test/test_hash_readwrite_lf.c
+index 432e86e0e..8fb56d3f9 100644
+--- a/test/test/test_hash_readwrite_lf.c
++++ b/test/test/test_hash_readwrite_lf.c
+@@ -43,5 +43,5 @@
+ #define BULK_LOOKUP 16
@@ -135 +118 @@
-@@ -63,5 +63,5 @@ struct rwc_perf {
+@@ -56,5 +56,5 @@ struct rwc_perf {
@@ -142 +125 @@
-@@ -88,7 +88,7 @@ static rte_atomic64_t greads;
+@@ -77,7 +77,7 @@ static rte_atomic64_t greads;
@@ -151,18 +134,2 @@
- static inline uint16_t
-diff --git a/app/test/test_latencystats.c b/app/test/test_latencystats.c
-index 8dd794be4..968e0bc47 100644
---- a/app/test/test_latencystats.c
-+++ b/app/test/test_latencystats.c
-@@ -18,8 +18,8 @@
- #define QUEUE_ID 0
- 
--uint16_t portid;
--struct rte_ring *ring;
-+static uint16_t portid;
-+static struct rte_ring *ring;
- 
--struct rte_metric_name lat_stats_strings[] = {
-+static struct rte_metric_name lat_stats_strings[] = {
- 	{"min_latency_ns"},
- 	{"avg_latency_ns"},
-diff --git a/app/test/test_member_perf.c b/app/test/test_member_perf.c
+ static inline int
+diff --git a/test/test/test_member_perf.c b/test/test/test_member_perf.c
@@ -170,2 +137,2 @@
---- a/app/test/test_member_perf.c
-+++ b/app/test/test_member_perf.c
+--- a/test/test/test_member_perf.c
++++ b/test/test/test_member_perf.c
@@ -197,29 +163,0 @@
-diff --git a/app/test/test_rcu_qsbr.c b/app/test/test_rcu_qsbr.c
-index 2f71ec6ad..85d80e0fb 100644
---- a/app/test/test_rcu_qsbr.c
-+++ b/app/test/test_rcu_qsbr.c
-@@ -26,6 +26,6 @@
- #define TEST_RCU_QSBR_CNT_INIT 1
- 
--uint16_t enabled_core_ids[RTE_MAX_LCORE];
--unsigned int num_cores;
-+static uint16_t enabled_core_ids[RTE_MAX_LCORE];
-+static unsigned int num_cores;
- 
- static uint32_t *keys;
-@@ -36,6 +36,6 @@ static uint8_t writer_done;
- 
- static struct rte_rcu_qsbr *t[RTE_MAX_LCORE];
--struct rte_hash *h[RTE_MAX_LCORE];
--char hash_name[RTE_MAX_LCORE][8];
-+static struct rte_hash *h[RTE_MAX_LCORE];
-+static char hash_name[RTE_MAX_LCORE][8];
- 
- struct test_rcu_thread_info {
-@@ -47,5 +47,5 @@ struct test_rcu_thread_info {
- 	uint16_t r_core_ids[2];
- };
--struct test_rcu_thread_info thread_info[RTE_MAX_LCORE/4];
-+static struct test_rcu_thread_info thread_info[RTE_MAX_LCORE/4];
- 
- static int


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

* [dpdk-stable] patch 'reciprocal: fix off-by-one with 32-bit divisor' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (17 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'test: " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'vfio: fix truncated BAR offset for 32-bit' " Kevin Traynor
                   ` (42 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Pavan Nikhilesh; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/28450d0732da46af14c4f39ef38a3db5a20cb478

Thanks.

Kevin.

---
From 28450d0732da46af14c4f39ef38a3db5a20cb478 Mon Sep 17 00:00:00 2001
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Date: Wed, 4 Sep 2019 00:46:45 +0530
Subject: [PATCH] reciprocal: fix off-by-one with 32-bit divisor

[ upstream commit 9b0a1dadc345805ca9d7428a977da080d5eee7e2 ]

Fix off-by-one error in 64bit reciprocal division when divisor is 32bit.

Caught with the unit test:

RTE>>reciprocal_division
Validating unsigned 32bit division.
Validating unsigned 64bit division.
Validating unsigned 64bit division with 32bit divisor.
Division failed, 16983222950483802557/819 = expected 20736535959076681
result 20736535959076682
Validating division by power of 2.
Test Failed

Fixes: 6d45659eacb8 ("eal: add u64-bit variant for reciprocal divide")

Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
 lib/librte_eal/common/rte_reciprocal.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/librte_eal/common/rte_reciprocal.c b/lib/librte_eal/common/rte_reciprocal.c
index f017d0c28..1c6d10e73 100644
--- a/lib/librte_eal/common/rte_reciprocal.c
+++ b/lib/librte_eal/common/rte_reciprocal.c
@@ -134,10 +134,13 @@ rte_reciprocal_value_u64(uint64_t d)
 	struct rte_reciprocal_u64 R;
 	uint64_t m;
+	uint64_t r;
 	int l;
 
 	l = 63 - __builtin_clzll(d);
 
-	m = divide_128_div_64_to_64((1ULL << l), 0, d, NULL) << 1;
-	m = (1ULL << l) - d ? m + 2 : 1;
+	m = divide_128_div_64_to_64((1ULL << l), 0, d, &r) << 1;
+	if (r << 1 < r || r << 1 >= d)
+		m++;
+	m = (1ULL << l) - d ? m + 1 : 1;
 	R.m = m;
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.427435154 +0000
+++ 0020-reciprocal-fix-off-by-one-with-32-bit-divisor.patch	2019-12-10 14:49:39.012458513 +0000
@@ -1 +1 @@
-From 9b0a1dadc345805ca9d7428a977da080d5eee7e2 Mon Sep 17 00:00:00 2001
+From 28450d0732da46af14c4f39ef38a3db5a20cb478 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 9b0a1dadc345805ca9d7428a977da080d5eee7e2 ]
+
@@ -20 +21,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'vfio: fix truncated BAR offset for 32-bit' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (18 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'reciprocal: fix off-by-one with 32-bit divisor' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'ethdev: fix include of ethernet header file' " Kevin Traynor
                   ` (41 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Michal Krawczyk; +Cc: Anatoly Burakov, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/620f94f6c161101afc2b826af09185fc34f19ade

Thanks.

Kevin.

---
From 620f94f6c161101afc2b826af09185fc34f19ade Mon Sep 17 00:00:00 2001
From: Michal Krawczyk <mk@semihalf.com>
Date: Thu, 24 Oct 2019 14:10:46 +0200
Subject: [PATCH] vfio: fix truncated BAR offset for 32-bit

[ upstream commit 8108393d982b805ee4911c0d5cdfed53acec5d36 ]

When 32-bit application is built on 64-bit system it is possible that
the offset of the resource is outside of the 32-bit value.

The problem with the unsigned long is, that it is 32-bit and not 64-bit
when using armhf compiler. Although the system is returning u64 value,
we are losing it's value if it's higher than 32-bit in the conversion
process. It can further cause mmap to fail due to offset being 0 or to
map not intended memory region.

To make it more portable, the uint64_t value is now being used for
storing offset instead of unsigned long. The size of being 32-bit seems
to be fine as the 32-bit application won't be able to access bigger
memory and it is further converted to size_t anyway. But for better
readability and to be consistent, it's type was changed to size_t as
well.

Fixes: 0205f873557c ("vfio: fix overflow of BAR region offset and size")

Signed-off-by: Michal Krawczyk <mk@semihalf.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 drivers/bus/pci/linux/pci_vfio.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/bus/pci/linux/pci_vfio.c b/drivers/bus/pci/linux/pci_vfio.c
index 8e3d43e9c..a3635cfe1 100644
--- a/drivers/bus/pci/linux/pci_vfio.c
+++ b/drivers/bus/pci/linux/pci_vfio.c
@@ -452,5 +452,6 @@ pci_vfio_mmap_bar(int vfio_dev_fd, struct mapped_pci_resource *vfio_res,
 {
 	struct memreg {
-		unsigned long offset, size;
+		uint64_t offset;
+		size_t   size;
 	} memreg[2] = {};
 	void *bar_addr;
@@ -488,5 +489,6 @@ pci_vfio_mmap_bar(int vfio_dev_fd, struct mapped_pci_resource *vfio_res,
 			"Trying to map BAR%d that contains the MSI-X "
 			"table. Trying offsets: "
-			"0x%04lx:0x%04lx, 0x%04lx:0x%04lx\n", bar_index,
+			"0x%04" PRIx64 ":0x%04zx, 0x%04" PRIx64 ":0x%04zx\n",
+			bar_index,
 			memreg[0].offset, memreg[0].size,
 			memreg[1].offset, memreg[1].size);
@@ -513,6 +515,6 @@ pci_vfio_mmap_bar(int vfio_dev_fd, struct mapped_pci_resource *vfio_res,
 			&& memreg[1].offset && memreg[1].size) {
 			void *second_addr = RTE_PTR_ADD(bar_addr,
-							memreg[1].offset -
-							(uintptr_t)bar->offset);
+						(uintptr_t)(memreg[1].offset -
+						bar->offset));
 			map_addr = pci_map_resource(second_addr,
 							vfio_dev_fd,
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.491384387 +0000
+++ 0021-vfio-fix-truncated-BAR-offset-for-32-bit.patch	2019-12-10 14:49:39.014458476 +0000
@@ -1 +1 @@
-From 8108393d982b805ee4911c0d5cdfed53acec5d36 Mon Sep 17 00:00:00 2001
+From 620f94f6c161101afc2b826af09185fc34f19ade Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 8108393d982b805ee4911c0d5cdfed53acec5d36 ]
+
@@ -23 +24,0 @@
-Cc: stable@dpdk.org
@@ -32 +33 @@
-index faf2990a7..b8faa23f8 100644
+index 8e3d43e9c..a3635cfe1 100644
@@ -43 +44 @@
-@@ -505,5 +506,6 @@ pci_vfio_mmap_bar(int vfio_dev_fd, struct mapped_pci_resource *vfio_res,
+@@ -488,5 +489,6 @@ pci_vfio_mmap_bar(int vfio_dev_fd, struct mapped_pci_resource *vfio_res,
@@ -51 +52 @@
-@@ -530,6 +532,6 @@ pci_vfio_mmap_bar(int vfio_dev_fd, struct mapped_pci_resource *vfio_res,
+@@ -513,6 +515,6 @@ pci_vfio_mmap_bar(int vfio_dev_fd, struct mapped_pci_resource *vfio_res,


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

* [dpdk-stable] patch 'ethdev: fix include of ethernet header file' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (19 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'vfio: fix truncated BAR offset for 32-bit' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/bnxt: fix mbuf free when clearing Tx queue' " Kevin Traynor
                   ` (40 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Ciara Power; +Cc: Thomas Monjalon, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/2b48c8332e97a0ddc9df044227653ecb3d467c3b

Thanks.

Kevin.

---
From 2b48c8332e97a0ddc9df044227653ecb3d467c3b Mon Sep 17 00:00:00 2001
From: Ciara Power <ciara.power@intel.com>
Date: Wed, 23 Oct 2019 13:53:00 +0100
Subject: [PATCH] ethdev: fix include of ethernet header file

[ upstream commit 22a076367369a04391a7b16d60a2905cf5c1da46 ]

The include for rte_ether.h in each of these files should not use
quotes, as the header file is not in the librte_ethdev directory.

These are now updated to use <> symbols, to search directories
pre-designated by the compiler.

Fixes: 57668ed7bc08 ("net: move ethernet definitions to the net library")

Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
---
 lib/librte_ethdev/rte_eth_ctrl.h | 2 +-
 lib/librte_ethdev/rte_ethdev.c   | 2 +-
 lib/librte_ethdev/rte_ethdev.h   | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/lib/librte_ethdev/rte_eth_ctrl.h b/lib/librte_ethdev/rte_eth_ctrl.h
index 925a63f24..0263e5040 100644
--- a/lib/librte_ethdev/rte_eth_ctrl.h
+++ b/lib/librte_ethdev/rte_eth_ctrl.h
@@ -8,5 +8,5 @@
 #include <stdint.h>
 #include <rte_common.h>
-#include "rte_ether.h"
+#include <rte_ether.h>
 
 /**
diff --git a/lib/librte_ethdev/rte_ethdev.c b/lib/librte_ethdev/rte_ethdev.c
index 3c75d3c78..b3fce9b08 100644
--- a/lib/librte_ethdev/rte_ethdev.c
+++ b/lib/librte_ethdev/rte_ethdev.c
@@ -38,6 +38,6 @@
 #include <rte_kvargs.h>
 #include <rte_class.h>
+#include <rte_ether.h>
 
-#include "rte_ether.h"
 #include "rte_ethdev.h"
 #include "rte_ethdev_driver.h"
diff --git a/lib/librte_ethdev/rte_ethdev.h b/lib/librte_ethdev/rte_ethdev.h
index 5d447bc12..a9472af62 100644
--- a/lib/librte_ethdev/rte_ethdev.h
+++ b/lib/librte_ethdev/rte_ethdev.h
@@ -155,6 +155,6 @@ extern "C" {
 #include <rte_common.h>
 #include <rte_config.h>
+#include <rte_ether.h>
 
-#include "rte_ether.h"
 #include "rte_eth_ctrl.h"
 #include "rte_dev_info.h"
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.559020730 +0000
+++ 0022-ethdev-fix-include-of-ethernet-header-file.patch	2019-12-10 14:49:39.024458290 +0000
@@ -1 +1 @@
-From 22a076367369a04391a7b16d60a2905cf5c1da46 Mon Sep 17 00:00:00 2001
+From 2b48c8332e97a0ddc9df044227653ecb3d467c3b Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 22a076367369a04391a7b16d60a2905cf5c1da46 ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org
@@ -24 +25 @@
-index be4b4af65..1416c371f 100644
+index 925a63f24..0263e5040 100644
@@ -32 +32,0 @@
- #include "rte_flow.h"
@@ -33,0 +34 @@
+ /**
@@ -35 +36 @@
-index 78da29397..7743205d3 100644
+index 3c75d3c78..b3fce9b08 100644
@@ -47 +48 @@
-index 33c528bb8..c36c1b631 100644
+index 5d447bc12..a9472af62 100644
@@ -50 +51 @@
-@@ -157,6 +157,6 @@ extern "C" {
+@@ -155,6 +155,6 @@ extern "C" {
@@ -55,0 +57 @@
+ #include "rte_eth_ctrl.h"
@@ -57 +58,0 @@
- 


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

* [dpdk-stable] patch 'net/bnxt: fix mbuf free when clearing Tx queue' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (20 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'ethdev: fix include of ethernet header file' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix exception with multi-driver' " Kevin Traynor
                   ` (39 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Lance Richardson; +Cc: Ajit Khaparde, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/34afffbb2f7f29d9c1e1ac994b10fa6328fdd075

Thanks.

Kevin.

---
From 34afffbb2f7f29d9c1e1ac994b10fa6328fdd075 Mon Sep 17 00:00:00 2001
From: Lance Richardson <lance.richardson@broadcom.com>
Date: Wed, 23 Oct 2019 10:27:35 -0400
Subject: [PATCH] net/bnxt: fix mbuf free when clearing Tx queue

[ upstream commit 00932678c6bbbe922a2790e59fd68b34719f3171 ]

When freeing pending transmit mbufs, use rte_pktmbuf_free_seg()
instead of rte_pktmbuf_free(), otherwise linked mbufs may be freed
more than once.

Fixes: 6eb3cc2294fd ("net/bnxt: add initial Tx code")

Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
---
 drivers/net/bnxt/bnxt_txq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/bnxt/bnxt_txq.c b/drivers/net/bnxt/bnxt_txq.c
index d6b93b44a..b76ad05fe 100644
--- a/drivers/net/bnxt/bnxt_txq.c
+++ b/drivers/net/bnxt/bnxt_txq.c
@@ -36,5 +36,5 @@ static void bnxt_tx_queue_release_mbufs(struct bnxt_tx_queue *txq)
 		for (i = 0; i < txq->tx_ring->tx_ring_struct->ring_size; i++) {
 			if (sw_ring[i].mbuf) {
-				rte_pktmbuf_free(sw_ring[i].mbuf);
+				rte_pktmbuf_free_seg(sw_ring[i].mbuf);
 				sw_ring[i].mbuf = NULL;
 			}
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.640999049 +0000
+++ 0023-net-bnxt-fix-mbuf-free-when-clearing-Tx-queue.patch	2019-12-10 14:49:39.025458271 +0000
@@ -1 +1 @@
-From 00932678c6bbbe922a2790e59fd68b34719f3171 Mon Sep 17 00:00:00 2001
+From 34afffbb2f7f29d9c1e1ac994b10fa6328fdd075 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 00932678c6bbbe922a2790e59fd68b34719f3171 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index ebb9199d2..6b866d445 100644
+index d6b93b44a..b76ad05fe 100644
@@ -23 +24 @@
-@@ -35,5 +35,5 @@ static void bnxt_tx_queue_release_mbufs(struct bnxt_tx_queue *txq)
+@@ -36,5 +36,5 @@ static void bnxt_tx_queue_release_mbufs(struct bnxt_tx_queue *txq)


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

* [dpdk-stable] patch 'net/i40e: fix exception with multi-driver' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (21 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/bnxt: fix mbuf free when clearing Tx queue' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/ixgbe: fix zeroing of RSS config' " Kevin Traynor
                   ` (38 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Alvin Zhang; +Cc: Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/33c64c29449cb19efaf38e05231281d78355c7d5

Thanks.

Kevin.

---
From 33c64c29449cb19efaf38e05231281d78355c7d5 Mon Sep 17 00:00:00 2001
From: Alvin Zhang <alvinx.zhang@intel.com>
Date: Tue, 8 Oct 2019 18:52:31 +0800
Subject: [PATCH] net/i40e: fix exception with multi-driver

[ upstream commit 39de80b267e05d6f3322044e5851306acc84f892 ]

If support-multi-driver is enabled, the global registers should not
be configured. But with the current code base, if creating a flow
with rte_flow API, the global register GLQF_FD_MSK may be changed.

Fixes: cfdfca493cae ("net/i40e: fix multiple driver support")

Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 38 +++++++++++++++++++++++++++++-------
 1 file changed, 31 insertions(+), 7 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 4208d8306..642532ba9 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -2351,4 +2351,35 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf,
 		return -EINVAL;
 
+	if (pf->support_multi_driver) {
+		for (i = 0; i < num; i++)
+			if (i40e_read_rx_ctl(hw,
+					I40E_GLQF_FD_MSK(i, pctype)) !=
+					mask_reg[i]) {
+				PMD_DRV_LOG(ERR, "Input set setting is not"
+						" supported with"
+						" `support-multi-driver`"
+						" enabled!");
+				return -EPERM;
+			}
+		for (i = num; i < I40E_INSET_MASK_NUM_REG; i++)
+			if (i40e_read_rx_ctl(hw,
+					I40E_GLQF_FD_MSK(i, pctype)) != 0) {
+				PMD_DRV_LOG(ERR, "Input set setting is not"
+						" supported with"
+						" `support-multi-driver`"
+						" enabled!");
+				return -EPERM;
+			}
+
+	} else {
+		for (i = 0; i < num; i++)
+			i40e_check_write_reg(hw, I40E_GLQF_FD_MSK(i, pctype),
+				mask_reg[i]);
+		/*clear unused mask registers of the pctype */
+		for (i = num; i < I40E_INSET_MASK_NUM_REG; i++)
+			i40e_check_write_reg(hw,
+					I40E_GLQF_FD_MSK(i, pctype), 0);
+	}
+
 	inset_reg |= i40e_translate_input_set_reg(hw->mac.type, input_set);
 
@@ -2359,11 +2390,4 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf,
 					 I40E_32_BIT_WIDTH) & UINT32_MAX));
 
-	for (i = 0; i < num; i++)
-		i40e_check_write_reg(hw, I40E_GLQF_FD_MSK(i, pctype),
-				     mask_reg[i]);
-
-	/*clear unused mask registers of the pctype */
-	for (i = num; i < I40E_INSET_MASK_NUM_REG; i++)
-		i40e_check_write_reg(hw, I40E_GLQF_FD_MSK(i, pctype), 0);
 	I40E_WRITE_FLUSH(hw);
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.712975636 +0000
+++ 0024-net-i40e-fix-exception-with-multi-driver.patch	2019-12-10 14:49:39.029458196 +0000
@@ -1 +1 @@
-From 39de80b267e05d6f3322044e5851306acc84f892 Mon Sep 17 00:00:00 2001
+From 33c64c29449cb19efaf38e05231281d78355c7d5 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 39de80b267e05d6f3322044e5851306acc84f892 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index 9e038fa48..61021037c 100644
+index 4208d8306..642532ba9 100644
@@ -23 +24 @@
-@@ -2350,4 +2350,35 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf,
+@@ -2351,4 +2351,35 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf,
@@ -59 +60 @@
-@@ -2358,11 +2389,4 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf,
+@@ -2359,11 +2390,4 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf,


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

* [dpdk-stable] patch 'net/ixgbe: fix zeroing of RSS config' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (22 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix exception with multi-driver' " Kevin Traynor
@ 2019-12-10 14:58 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/e1000: " Kevin Traynor
                   ` (37 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:58 UTC (permalink / raw)
  To: Congwen Zhang; +Cc: Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/83a3605b4bd7f8dcdf5f1f5c636bf01d56b6f366

Thanks.

Kevin.

---
From 83a3605b4bd7f8dcdf5f1f5c636bf01d56b6f366 Mon Sep 17 00:00:00 2001
From: Congwen Zhang <zhang.congwen@zte.com.cn>
Date: Thu, 8 Aug 2019 09:42:07 +0800
Subject: [PATCH] net/ixgbe: fix zeroing of RSS config

[ upstream commit 40e01fd8c84c1ec71d41dc4fff23350428f4e48a ]

Correct the rss_conf type in sizeof.

Fixes: 518cc3927b13 ("net/ixgbe: move RSS to flow API")

Signed-off-by: Congwen Zhang <zhang.congwen@zte.com.cn>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/ixgbe/ixgbe_flow.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ixgbe/ixgbe_flow.c b/drivers/net/ixgbe/ixgbe_flow.c
index f0fafebc8..c7059ea41 100644
--- a/drivers/net/ixgbe/ixgbe_flow.c
+++ b/drivers/net/ixgbe/ixgbe_flow.c
@@ -2875,5 +2875,5 @@ ixgbe_parse_rss_filter(struct rte_eth_dev *dev,
 	act = next_no_void_action(actions, act);
 	if (act->type != RTE_FLOW_ACTION_TYPE_END) {
-		memset(rss_conf, 0, sizeof(struct rte_eth_rss_conf));
+		memset(rss_conf, 0, sizeof(struct ixgbe_rte_flow_rss_conf));
 		rte_flow_error_set(error, EINVAL,
 			RTE_FLOW_ERROR_TYPE_ACTION,
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.806644816 +0000
+++ 0025-net-ixgbe-fix-zeroing-of-RSS-config.patch	2019-12-10 14:49:39.032458140 +0000
@@ -1 +1 @@
-From 40e01fd8c84c1ec71d41dc4fff23350428f4e48a Mon Sep 17 00:00:00 2001
+From 83a3605b4bd7f8dcdf5f1f5c636bf01d56b6f366 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 40e01fd8c84c1ec71d41dc4fff23350428f4e48a ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org
@@ -18 +19 @@
-index 92377b81c..b2a2bfc02 100644
+index f0fafebc8..c7059ea41 100644


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

* [dpdk-stable] patch 'net/e1000: fix zeroing of RSS config' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (23 preceding siblings ...)
  2019-12-10 14:58 ` [dpdk-stable] patch 'net/ixgbe: fix zeroing of RSS config' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject deferred Rx start' " Kevin Traynor
                   ` (36 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Congwen Zhang; +Cc: Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From a15e444cb4c6da13eb8702458a56b92c073d42ca Mon Sep 17 00:00:00 2001
From: Congwen Zhang <zhang.congwen@zte.com.cn>
Date: Wed, 7 Aug 2019 16:31:45 +0800
Subject: [PATCH] net/e1000: fix zeroing of RSS config

[ upstream commit 0e4949639ba4e915e7b799f7764b83e124e73669 ]

The type of rss_conf is struct igb_rte_flow_rss_conf *,
 not struct rte_eth_rss_conf *.

Fixes: 424ae915baf0 ("net/e1000: move RSS to flow API")

Signed-off-by: Congwen Zhang <zhang.congwen@zte.com.cn>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/e1000/igb_flow.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/e1000/igb_flow.c b/drivers/net/e1000/igb_flow.c
index 77ac4a5bc..fedb12a29 100644
--- a/drivers/net/e1000/igb_flow.c
+++ b/drivers/net/e1000/igb_flow.c
@@ -1382,5 +1382,5 @@ igb_parse_rss_filter(struct rte_eth_dev *dev,
 	NEXT_ITEM_OF_ACTION(act, actions, index);
 	if (act->type != RTE_FLOW_ACTION_TYPE_END) {
-		memset(rss_conf, 0, sizeof(struct rte_eth_rss_conf));
+		memset(rss_conf, 0, sizeof(struct igb_rte_flow_rss_conf));
 		rte_flow_error_set(error, EINVAL,
 			RTE_FLOW_ERROR_TYPE_ACTION,
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.885407818 +0000
+++ 0026-net-e1000-fix-zeroing-of-RSS-config.patch	2019-12-10 14:49:39.034458103 +0000
@@ -1 +1 @@
-From 0e4949639ba4e915e7b799f7764b83e124e73669 Mon Sep 17 00:00:00 2001
+From a15e444cb4c6da13eb8702458a56b92c073d42ca Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 0e4949639ba4e915e7b799f7764b83e124e73669 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index 31ca9bb1c..43fef889b 100644
+index 77ac4a5bc..fedb12a29 100644


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

* [dpdk-stable] patch 'net/virtio: reject deferred Rx start' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (24 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/e1000: " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject deferred Tx " Kevin Traynor
                   ` (35 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Dilshod Urazov; +Cc: Andrew Rybchenko, Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/3a1d14413a19c65e8a5b42ec131de319f8e08c03

Thanks.

Kevin.

---
From 3a1d14413a19c65e8a5b42ec131de319f8e08c03 Mon Sep 17 00:00:00 2001
From: Dilshod Urazov <dilshod.urazov@oktetlabs.ru>
Date: Wed, 9 Oct 2019 13:32:05 +0100
Subject: [PATCH] net/virtio: reject deferred Rx start

[ upstream commit 955d7c1f03d049b2018db3d2c4a78920368d7aa3 ]

Deferred start Rx queue is not supported by the driver.

Fixes: 0748be2cf9a2 ("ethdev: queue start and stop")

Signed-off-by: Dilshod Urazov <dilshod.urazov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 drivers/net/virtio/virtio_rxtx.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c
index 0fface207..c7df33829 100644
--- a/drivers/net/virtio/virtio_rxtx.c
+++ b/drivers/net/virtio/virtio_rxtx.c
@@ -556,5 +556,5 @@ virtio_dev_rx_queue_setup(struct rte_eth_dev *dev,
 			uint16_t nb_desc,
 			unsigned int socket_id __rte_unused,
-			const struct rte_eth_rxconf *rx_conf __rte_unused,
+			const struct rte_eth_rxconf *rx_conf,
 			struct rte_mempool *mp)
 {
@@ -566,4 +566,9 @@ virtio_dev_rx_queue_setup(struct rte_eth_dev *dev,
 	PMD_INIT_FUNC_TRACE();
 
+	if (rx_conf->rx_deferred_start) {
+		PMD_INIT_LOG(ERR, "Rx deferred start is not supported");
+		return -EINVAL;
+	}
+
 	if (nb_desc == 0 || nb_desc > vq->vq_nentries)
 		nb_desc = vq->vq_nentries;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:40.950105941 +0000
+++ 0027-net-virtio-reject-deferred-Rx-start.patch	2019-12-10 14:49:39.036458066 +0000
@@ -1 +1 @@
-From 955d7c1f03d049b2018db3d2c4a78920368d7aa3 Mon Sep 17 00:00:00 2001
+From 3a1d14413a19c65e8a5b42ec131de319f8e08c03 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 955d7c1f03d049b2018db3d2c4a78920368d7aa3 ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index b5fc4ecbe..405c313f2 100644
+index 0fface207..c7df33829 100644
@@ -22 +23 @@
-@@ -930,5 +930,5 @@ virtio_dev_rx_queue_setup(struct rte_eth_dev *dev,
+@@ -556,5 +556,5 @@ virtio_dev_rx_queue_setup(struct rte_eth_dev *dev,
@@ -29 +30 @@
-@@ -940,4 +940,9 @@ virtio_dev_rx_queue_setup(struct rte_eth_dev *dev,
+@@ -566,4 +566,9 @@ virtio_dev_rx_queue_setup(struct rte_eth_dev *dev,


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

* [dpdk-stable] patch 'net/virtio: reject deferred Tx start' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (25 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject deferred Rx start' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject unsupported Rx multi-queue modes' " Kevin Traynor
                   ` (34 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Dilshod Urazov; +Cc: Andrew Rybchenko, Tiwei Bie, Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/4ce6b6a7fe4498c12c95460619aa1112bb820475

Thanks.

Kevin.

---
From 4ce6b6a7fe4498c12c95460619aa1112bb820475 Mon Sep 17 00:00:00 2001
From: Dilshod Urazov <dilshod.urazov@oktetlabs.ru>
Date: Wed, 9 Oct 2019 13:32:06 +0100
Subject: [PATCH] net/virtio: reject deferred Tx start

[ upstream commit c0e03310ee90c5d7aff9fffb243f3374f0b0cd61 ]

Deferred start Tx queue is not supported by the driver.

Fixes: 0748be2cf9a2 ("ethdev: queue start and stop")

Signed-off-by: Dilshod Urazov <dilshod.urazov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 drivers/net/virtio/virtio_rxtx.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c
index c7df33829..306009d96 100644
--- a/drivers/net/virtio/virtio_rxtx.c
+++ b/drivers/net/virtio/virtio_rxtx.c
@@ -688,4 +688,9 @@ virtio_dev_tx_queue_setup(struct rte_eth_dev *dev,
 	PMD_INIT_FUNC_TRACE();
 
+	if (tx_conf->tx_deferred_start) {
+		PMD_INIT_LOG(ERR, "Tx deferred start is not supported");
+		return -EINVAL;
+	}
+
 	if (nb_desc == 0 || nb_desc > vq->vq_nentries)
 		nb_desc = vq->vq_nentries;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.013963172 +0000
+++ 0028-net-virtio-reject-deferred-Tx-start.patch	2019-12-10 14:49:39.038458028 +0000
@@ -1 +1 @@
-From c0e03310ee90c5d7aff9fffb243f3374f0b0cd61 Mon Sep 17 00:00:00 2001
+From 4ce6b6a7fe4498c12c95460619aa1112bb820475 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c0e03310ee90c5d7aff9fffb243f3374f0b0cd61 ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index 405c313f2..0959250a3 100644
+index c7df33829..306009d96 100644
@@ -23 +24 @@
-@@ -1068,4 +1068,9 @@ virtio_dev_tx_queue_setup(struct rte_eth_dev *dev,
+@@ -688,4 +688,9 @@ virtio_dev_tx_queue_setup(struct rte_eth_dev *dev,


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

* [dpdk-stable] patch 'net/virtio: reject unsupported Rx multi-queue modes' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (26 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject deferred Tx " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject unsupported Tx " Kevin Traynor
                   ` (33 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Dilshod Urazov; +Cc: Andrew Rybchenko, Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From 20accec1aa2a33845dbac155b96181b68927e75e Mon Sep 17 00:00:00 2001
From: Dilshod Urazov <dilshod.urazov@oktetlabs.ru>
Date: Wed, 9 Oct 2019 13:32:07 +0100
Subject: [PATCH] net/virtio: reject unsupported Rx multi-queue modes

[ upstream commit 13b3137f3b7c8f866947a9b34e06a8aec0d084f7 ]

This driver supports none of DCB, RSS or VMDQ modes, therefore must
check and return error if configured incorrectly.

Virtio can distribute Rx packets across multi-queue, but there is
no controls (algorithm, redirection table, hash function) except
number of Rx queues and ETH_MQ_RX_NONE is the best fit meaning
no method is enforced on how to route packets to MQs.

Fixes: c1f86306a026 ("virtio: add new driver")

Signed-off-by: Dilshod Urazov <dilshod.urazov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 drivers/net/virtio/virtio_ethdev.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c
index 8c54edc28..634e56817 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -1867,4 +1867,11 @@ virtio_dev_configure(struct rte_eth_dev *dev)
 	req_features = VIRTIO_PMD_DEFAULT_GUEST_FEATURES;
 
+	if (rxmode->mq_mode != ETH_MQ_RX_NONE) {
+		PMD_DRV_LOG(ERR,
+			"Unsupported Rx multi queue mode %d",
+			rxmode->mq_mode);
+		return -EINVAL;
+	}
+
 	if (dev->data->dev_conf.intr_conf.rxq) {
 		ret = virtio_init_device(dev, hw->req_guest_features);
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.083295473 +0000
+++ 0029-net-virtio-reject-unsupported-Rx-multi-queue-modes.patch	2019-12-10 14:49:39.040457991 +0000
@@ -1 +1 @@
-From 13b3137f3b7c8f866947a9b34e06a8aec0d084f7 Mon Sep 17 00:00:00 2001
+From 20accec1aa2a33845dbac155b96181b68927e75e Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 13b3137f3b7c8f866947a9b34e06a8aec0d084f7 ]
+
@@ -15 +16,0 @@
-Cc: stable@dpdk.org
@@ -25 +26 @@
-index 0a2ed2e50..76bd40a3e 100644
+index 8c54edc28..634e56817 100644
@@ -28 +29 @@
-@@ -2067,4 +2067,11 @@ virtio_dev_configure(struct rte_eth_dev *dev)
+@@ -1867,4 +1867,11 @@ virtio_dev_configure(struct rte_eth_dev *dev)


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

* [dpdk-stable] patch 'net/virtio: reject unsupported Tx multi-queue modes' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (27 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject unsupported Rx multi-queue modes' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'vhost: fix IPv4 checksum' " Kevin Traynor
                   ` (32 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Andrew Rybchenko; +Cc: Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/9b86e7fb843021c6ddbcc5a2fe46e685968893b8

Thanks.

Kevin.

---
From 9b86e7fb843021c6ddbcc5a2fe46e685968893b8 Mon Sep 17 00:00:00 2001
From: Andrew Rybchenko <arybchenko@solarflare.com>
Date: Wed, 9 Oct 2019 13:32:08 +0100
Subject: [PATCH] net/virtio: reject unsupported Tx multi-queue modes

[ upstream commit 9fc963acc26f31c46e4c7f8527b60fa2e5505f8f ]

This driver supports none of DCB or VMDQ modes, therefore must
check and return error if configured incorrectly.

Fixes: c1f86306a026 ("virtio: add new driver")

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 drivers/net/virtio/virtio_ethdev.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c
index 634e56817..2d4c6c7fa 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -1874,4 +1874,11 @@ virtio_dev_configure(struct rte_eth_dev *dev)
 	}
 
+	if (txmode->mq_mode != ETH_MQ_TX_NONE) {
+		PMD_DRV_LOG(ERR,
+			"Unsupported Tx multi queue mode %d",
+			txmode->mq_mode);
+		return -EINVAL;
+	}
+
 	if (dev->data->dev_conf.intr_conf.rxq) {
 		ret = virtio_init_device(dev, hw->req_guest_features);
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.145399449 +0000
+++ 0030-net-virtio-reject-unsupported-Tx-multi-queue-modes.patch	2019-12-10 14:49:39.044457917 +0000
@@ -1 +1 @@
-From 9fc963acc26f31c46e4c7f8527b60fa2e5505f8f Mon Sep 17 00:00:00 2001
+From 9b86e7fb843021c6ddbcc5a2fe46e685968893b8 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 9fc963acc26f31c46e4c7f8527b60fa2e5505f8f ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index 76bd40a3e..646de9945 100644
+index 634e56817..2d4c6c7fa 100644
@@ -22 +23 @@
-@@ -2074,4 +2074,11 @@ virtio_dev_configure(struct rte_eth_dev *dev)
+@@ -1874,4 +1874,11 @@ virtio_dev_configure(struct rte_eth_dev *dev)


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

* [dpdk-stable] patch 'vhost: fix IPv4 checksum' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (28 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject unsupported Tx " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/mlx: fix debug build with icc' " Kevin Traynor
                   ` (31 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Flavio Leitner; +Cc: Maxime Coquelin, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/63e3d795a7688b7d6803a75ca675012bca930f9d

Thanks.

Kevin.

---
From 63e3d795a7688b7d6803a75ca675012bca930f9d Mon Sep 17 00:00:00 2001
From: Flavio Leitner <fbl@sysclose.org>
Date: Thu, 24 Oct 2019 13:29:19 -0300
Subject: [PATCH] vhost: fix IPv4 checksum

[ upstream commit 84c39beb2fdbef86b917a18ade8d2e2baa3de732 ]

Currently the IPv4 header checksum is calculated including its
current value, which can be a valid checksum or just garbage.
In any case, if the original value is not zero, then the result
is always wrong.

The IPv4 checksum is defined in RFC791, page 14 says:
  Header Checksum:  16 bits

  The checksum algorithm is:
  The checksum field is the 16 bit one's complement of the one's
  complement sum of all 16 bit words in the header.  For purposes of
  computing the checksum, the value of the checksum field is zero.

Thus force the csum field to always be zero.

Fixes: b08b8cfeb2ae ("vhost: fix IP checksum")

Signed-off-by: Flavio Leitner <fbl@sysclose.org>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 lib/librte_vhost/virtio_net.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/librte_vhost/virtio_net.c b/lib/librte_vhost/virtio_net.c
index a6576891a..740db2ed7 100644
--- a/lib/librte_vhost/virtio_net.c
+++ b/lib/librte_vhost/virtio_net.c
@@ -269,4 +269,5 @@ virtio_enqueue_offload(struct rte_mbuf *m_buf, struct virtio_net_hdr *net_hdr)
 		ipv4_hdr = rte_pktmbuf_mtod_offset(m_buf, struct ipv4_hdr *,
 						   m_buf->l2_len);
+		ipv4_hdr->hdr_checksum = 0;
 		ipv4_hdr->hdr_checksum = rte_ipv4_cksum(ipv4_hdr);
 	}
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.209899453 +0000
+++ 0031-vhost-fix-IPv4-checksum.patch	2019-12-10 14:49:39.046457879 +0000
@@ -1 +1 @@
-From 84c39beb2fdbef86b917a18ade8d2e2baa3de732 Mon Sep 17 00:00:00 2001
+From 63e3d795a7688b7d6803a75ca675012bca930f9d Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 84c39beb2fdbef86b917a18ade8d2e2baa3de732 ]
+
@@ -22 +23,0 @@
-Cc: stable@dpdk.org
@@ -31 +32 @@
-index eae7825f0..cde7498c7 100644
+index a6576891a..740db2ed7 100644
@@ -34,2 +35,2 @@
-@@ -446,4 +446,5 @@ virtio_enqueue_offload(struct rte_mbuf *m_buf, struct virtio_net_hdr *net_hdr)
- 		ipv4_hdr = rte_pktmbuf_mtod_offset(m_buf, struct rte_ipv4_hdr *,
+@@ -269,4 +269,5 @@ virtio_enqueue_offload(struct rte_mbuf *m_buf, struct virtio_net_hdr *net_hdr)
+ 		ipv4_hdr = rte_pktmbuf_mtod_offset(m_buf, struct ipv4_hdr *,


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

* [dpdk-stable] patch 'net/mlx: fix debug build with icc' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (29 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'vhost: fix IPv4 checksum' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'app/testpmd: fix Tx checksum when TSO enabled' " Kevin Traynor
                   ` (30 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Raslan Darawsheh; +Cc: Viacheslav Ovsiienko, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/5f113254fee556d16a6b93f286e4c9d507a96110

Thanks.

Kevin.

---
From 5f113254fee556d16a6b93f286e4c9d507a96110 Mon Sep 17 00:00:00 2001
From: Raslan Darawsheh <rasland@mellanox.com>
Date: Wed, 23 Oct 2019 11:31:45 +0000
Subject: [PATCH] net/mlx: fix debug build with icc

[ upstream commit 38e118c0d8304190d4f24297fe2279a7b658c071 ]

Trying to compile mlx5 pmd in debug mode with icc
will lead to compilation failures due to the fact that
icc doesn't have support for the pragma of pedantic.

Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
---
 drivers/net/mlx4/Makefile | 5 ++++-
 drivers/net/mlx5/Makefile | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/net/mlx4/Makefile b/drivers/net/mlx4/Makefile
index df20c83d5..21b507982 100644
--- a/drivers/net/mlx4/Makefile
+++ b/drivers/net/mlx4/Makefile
@@ -65,5 +65,8 @@ endif
 # User-defined CFLAGS.
 ifeq ($(CONFIG_RTE_LIBRTE_MLX4_DEBUG),y)
-CFLAGS += -pedantic -UNDEBUG -DPEDANTIC
+CFLAGS += -pedantic -UNDEBUG
+ifneq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
+CFLAGS += -DPEDANTIC
+endif
 AUTO_CONFIG_CFLAGS += -Wno-pedantic
 else
diff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Makefile
index 3b2f626d4..72a8c97d3 100644
--- a/drivers/net/mlx5/Makefile
+++ b/drivers/net/mlx5/Makefile
@@ -83,5 +83,8 @@ endif
 # User-defined CFLAGS.
 ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DEBUG),y)
-CFLAGS += -pedantic -UNDEBUG -DPEDANTIC
+CFLAGS += -pedantic -UNDEBUG
+ifneq ($(CONFIG_RTE_TOOLCHAIN_ICC),y)
+CFLAGS += -DPEDANTIC
+endif
 AUTO_CONFIG_CFLAGS += -Wno-pedantic
 else
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.276993295 +0000
+++ 0032-net-mlx-fix-debug-build-with-icc.patch	2019-12-10 14:49:39.047457861 +0000
@@ -1 +1 @@
-From 38e118c0d8304190d4f24297fe2279a7b658c071 Mon Sep 17 00:00:00 2001
+From 5f113254fee556d16a6b93f286e4c9d507a96110 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 38e118c0d8304190d4f24297fe2279a7b658c071 ]
+
@@ -10,2 +11,0 @@
-Cc: stable@dpdk.org
-
@@ -20 +20 @@
-index 25d7c7555..7ea6f7489 100644
+index df20c83d5..21b507982 100644
@@ -23 +23 @@
-@@ -68,5 +68,8 @@ endif
+@@ -65,5 +65,8 @@ endif
@@ -34 +34 @@
-index 04de93a88..dae5b9fac 100644
+index 3b2f626d4..72a8c97d3 100644
@@ -37 +37 @@
-@@ -84,5 +84,8 @@ endif
+@@ -83,5 +83,8 @@ endif


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

* [dpdk-stable] patch 'app/testpmd: fix Tx checksum when TSO enabled' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (30 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/mlx: fix debug build with icc' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix ping with MTU change' " Kevin Traynor
                   ` (29 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Peng Huang; +Cc: Bernard Iremonger, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From f537973165b0348d85f79ce0be6be63fb17ad8e8 Mon Sep 17 00:00:00 2001
From: Peng Huang <peng.huang@intel.com>
Date: Thu, 24 Oct 2019 09:37:34 +0000
Subject: [PATCH] app/testpmd: fix Tx checksum when TSO enabled

[ upstream commit 0322272c9fd39e1a5942c73232d43d3ebeeff7b1 ]

This patch fixed the TX checksum value problem when enabled TSO in
tunnel packets, because outer UDP checksum calculation depend on
the TSO configuration.

Fixes: 0f62d63593ed ("app/testpmd: support tunneled TSO in checksum engine")

Signed-off-by: Peng Huang <peng.huang@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 app/test-pmd/csumonly.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/csumonly.c
index f4f2a7b29..46eb52d5b 100644
--- a/app/test-pmd/csumonly.c
+++ b/app/test-pmd/csumonly.c
@@ -473,4 +473,7 @@ process_outer_cksums(void *outer_l3_hdr, struct testpmd_offload_info *info,
 		return ol_flags;
 
+	if (tso_enabled)
+		ol_flags |= PKT_TX_TCP_SEG;
+
 	/* Skip SW outer UDP checksum generation if HW supports it */
 	if (tx_offloads & DEV_TX_OFFLOAD_OUTER_UDP_CKSUM) {
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.341066254 +0000
+++ 0033-app-testpmd-fix-Tx-checksum-when-TSO-enabled.patch	2019-12-10 14:49:39.048457842 +0000
@@ -1 +1 @@
-From 0322272c9fd39e1a5942c73232d43d3ebeeff7b1 Mon Sep 17 00:00:00 2001
+From f537973165b0348d85f79ce0be6be63fb17ad8e8 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 0322272c9fd39e1a5942c73232d43d3ebeeff7b1 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index e12695d94..5738128e6 100644
+index f4f2a7b29..46eb52d5b 100644
@@ -23,2 +24,2 @@
-@@ -545,4 +545,7 @@ process_outer_cksums(void *outer_l3_hdr, struct testpmd_offload_info *info,
- 		((char *)outer_l3_hdr + info->outer_l3_len);
+@@ -473,4 +473,7 @@ process_outer_cksums(void *outer_l3_hdr, struct testpmd_offload_info *info,
+ 		return ol_flags;


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

* [dpdk-stable] patch 'net/bnxt: fix ping with MTU change' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (31 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'app/testpmd: fix Tx checksum when TSO enabled' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix setting max RSS contexts' " Kevin Traynor
                   ` (28 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Santoshkumar Karanappa Rastapur; +Cc: Ajit Khaparde, Somnath Kotur, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/5326842b58bd8570c3b8303216da70f82a661895

Thanks.

Kevin.

---
From 5326842b58bd8570c3b8303216da70f82a661895 Mon Sep 17 00:00:00 2001
From: Santoshkumar Karanappa Rastapur <santosh.rastapur@broadcom.com>
Date: Thu, 24 Oct 2019 13:14:17 +0530
Subject: [PATCH] net/bnxt: fix ping with MTU change

[ upstream commit 7d4e9e2606752678aacc96e017ebc3c44a260ff1 ]

Driver was setting maximum receive unit differently in bnxt_mtu_set_op
and bnxt_hwrm_vnic_alloc. Moreover firmware adds the 4 bytes for FCS.
Fixed it by setting correct maximum receive unit value.

Fixes: daef48efe5e5 ("net/bnxt: support set MTU")

Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Signed-off-by: Santoshkumar Karanappa Rastapur <santosh.rastapur@broadcom.com>
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
---
 drivers/net/bnxt/bnxt.h        |  3 +++
 drivers/net/bnxt/bnxt_ethdev.c |  3 +--
 drivers/net/bnxt/bnxt_hwrm.c   | 11 +++--------
 3 files changed, 7 insertions(+), 10 deletions(-)

diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h
index 0ef5afcba..eeced3a47 100644
--- a/drivers/net/bnxt/bnxt.h
+++ b/drivers/net/bnxt/bnxt.h
@@ -23,4 +23,7 @@
 #define BNXT_MAX_MTU		9574
 #define VLAN_TAG_SIZE		4
+/* FW adds extra 4 bytes for FCS */
+#define BNXT_VNIC_MRU(mtu)\
+	((mtu) + ETHER_HDR_LEN + VLAN_TAG_SIZE * BNXT_NUM_VLANS)
 #define BNXT_VF_RSV_NUM_RSS_CTX	1
 #define BNXT_VF_RSV_NUM_L2_CTX	4
diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index 9da3a46c6..925ea42e6 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -1692,6 +1692,5 @@ static int bnxt_mtu_set_op(struct rte_eth_dev *eth_dev, uint16_t new_mtu)
 		uint16_t size = 0;
 
-		vnic->mru = bp->eth_dev->data->mtu + ETHER_HDR_LEN +
-					ETHER_CRC_LEN + VLAN_TAG_SIZE * 2;
+		vnic->mru = BNXT_VNIC_MRU(new_mtu);
 		rc = bnxt_hwrm_vnic_cfg(bp, vnic);
 		if (rc)
diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index 74f046c29..596ab3658 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -1333,6 +1333,5 @@ int bnxt_hwrm_vnic_alloc(struct bnxt *bp, struct bnxt_vnic_info *vnic)
 	vnic->cos_rule = (uint16_t)HWRM_NA_SIGNATURE;
 	vnic->lb_rule = (uint16_t)HWRM_NA_SIGNATURE;
-	vnic->mru = bp->eth_dev->data->mtu + ETHER_HDR_LEN +
-				ETHER_CRC_LEN + VLAN_TAG_SIZE;
+	vnic->mru = BNXT_VNIC_MRU(bp->eth_dev->data->mtu);
 	HWRM_PREP(req, VNIC_ALLOC, BNXT_USE_CHIMP_MB);
 
@@ -2528,7 +2527,5 @@ static int bnxt_hwrm_pf_func_cfg(struct bnxt *bp, int tx_rings)
 	req.flags = rte_cpu_to_le_32(bp->pf.func_cfg_flags);
 	req.mtu = rte_cpu_to_le_16(BNXT_MAX_MTU);
-	req.mru = rte_cpu_to_le_16(bp->eth_dev->data->mtu + ETHER_HDR_LEN +
-				   ETHER_CRC_LEN + VLAN_TAG_SIZE *
-				   BNXT_NUM_VLANS);
+	req.mru = rte_cpu_to_le_16(BNXT_VNIC_MRU(bp->eth_dev->data->mtu));
 	req.num_rsscos_ctxs = rte_cpu_to_le_16(bp->max_rsscos_ctx);
 	req.num_stat_ctxs = rte_cpu_to_le_16(bp->max_stat_ctx);
@@ -2569,7 +2566,5 @@ static void populate_vf_func_cfg_req(struct bnxt *bp,
 				    ETHER_CRC_LEN + VLAN_TAG_SIZE *
 				    BNXT_NUM_VLANS);
-	req->mru = rte_cpu_to_le_16(bp->eth_dev->data->mtu + ETHER_HDR_LEN +
-				    ETHER_CRC_LEN + VLAN_TAG_SIZE *
-				    BNXT_NUM_VLANS);
+	req->mru = rte_cpu_to_le_16(BNXT_VNIC_MRU(bp->eth_dev->data->mtu));
 	req->num_rsscos_ctxs = rte_cpu_to_le_16(bp->max_rsscos_ctx /
 						(num_vfs + 1));
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.399037258 +0000
+++ 0034-net-bnxt-fix-ping-with-MTU-change.patch	2019-12-10 14:49:39.057457674 +0000
@@ -1 +1 @@
-From 7d4e9e2606752678aacc96e017ebc3c44a260ff1 Mon Sep 17 00:00:00 2001
+From 5326842b58bd8570c3b8303216da70f82a661895 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 7d4e9e2606752678aacc96e017ebc3c44a260ff1 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -23 +24 @@
-index e5bdf6360..975bcf9c6 100644
+index 0ef5afcba..eeced3a47 100644
@@ -26,3 +27,3 @@
-@@ -78,4 +78,7 @@
- 				 RTE_ETHER_CRC_LEN +\
- 				 (BNXT_NUM_VLANS * VLAN_TAG_SIZE))
+@@ -23,4 +23,7 @@
+ #define BNXT_MAX_MTU		9574
+ #define VLAN_TAG_SIZE		4
@@ -31 +32 @@
-+	((mtu) + RTE_ETHER_HDR_LEN + VLAN_TAG_SIZE * BNXT_NUM_VLANS)
++	((mtu) + ETHER_HDR_LEN + VLAN_TAG_SIZE * BNXT_NUM_VLANS)
@@ -35 +36 @@
-index e7ec99e15..c97fcaceb 100644
+index 9da3a46c6..925ea42e6 100644
@@ -38 +39 @@
-@@ -2175,6 +2175,5 @@ static int bnxt_mtu_set_op(struct rte_eth_dev *eth_dev, uint16_t new_mtu)
+@@ -1692,6 +1692,5 @@ static int bnxt_mtu_set_op(struct rte_eth_dev *eth_dev, uint16_t new_mtu)
@@ -41,2 +42,2 @@
--		vnic->mru = new_mtu + RTE_ETHER_HDR_LEN +
--				RTE_ETHER_CRC_LEN + VLAN_TAG_SIZE * 2;
+-		vnic->mru = bp->eth_dev->data->mtu + ETHER_HDR_LEN +
+-					ETHER_CRC_LEN + VLAN_TAG_SIZE * 2;
@@ -47 +48 @@
-index 18e7429a7..018113c4c 100644
+index 74f046c29..596ab3658 100644
@@ -50,5 +51,5 @@
-@@ -1593,6 +1593,5 @@ int bnxt_hwrm_vnic_alloc(struct bnxt *bp, struct bnxt_vnic_info *vnic)
- 
- skip_ring_grps:
--	vnic->mru = bp->eth_dev->data->mtu + RTE_ETHER_HDR_LEN +
--				RTE_ETHER_CRC_LEN + VLAN_TAG_SIZE;
+@@ -1333,6 +1333,5 @@ int bnxt_hwrm_vnic_alloc(struct bnxt *bp, struct bnxt_vnic_info *vnic)
+ 	vnic->cos_rule = (uint16_t)HWRM_NA_SIGNATURE;
+ 	vnic->lb_rule = (uint16_t)HWRM_NA_SIGNATURE;
+-	vnic->mru = bp->eth_dev->data->mtu + ETHER_HDR_LEN +
+-				ETHER_CRC_LEN + VLAN_TAG_SIZE;
@@ -58 +59 @@
-@@ -2955,7 +2954,5 @@ static int bnxt_hwrm_pf_func_cfg(struct bnxt *bp, int tx_rings)
+@@ -2528,7 +2527,5 @@ static int bnxt_hwrm_pf_func_cfg(struct bnxt *bp, int tx_rings)
@@ -61,2 +62,2 @@
--	req.mru = rte_cpu_to_le_16(bp->eth_dev->data->mtu + RTE_ETHER_HDR_LEN +
--				   RTE_ETHER_CRC_LEN + VLAN_TAG_SIZE *
+-	req.mru = rte_cpu_to_le_16(bp->eth_dev->data->mtu + ETHER_HDR_LEN +
+-				   ETHER_CRC_LEN + VLAN_TAG_SIZE *
@@ -67,2 +68,2 @@
-@@ -2996,7 +2993,5 @@ static void populate_vf_func_cfg_req(struct bnxt *bp,
- 				    RTE_ETHER_CRC_LEN + VLAN_TAG_SIZE *
+@@ -2569,7 +2566,5 @@ static void populate_vf_func_cfg_req(struct bnxt *bp,
+ 				    ETHER_CRC_LEN + VLAN_TAG_SIZE *
@@ -70,2 +71,2 @@
--	req->mru = rte_cpu_to_le_16(bp->eth_dev->data->mtu + RTE_ETHER_HDR_LEN +
--				    RTE_ETHER_CRC_LEN + VLAN_TAG_SIZE *
+-	req->mru = rte_cpu_to_le_16(bp->eth_dev->data->mtu + ETHER_HDR_LEN +
+-				    ETHER_CRC_LEN + VLAN_TAG_SIZE *


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

* [dpdk-stable] patch 'net/bnxt: fix setting max RSS contexts' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (32 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix ping with MTU change' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix writing MTU to FW' " Kevin Traynor
                   ` (27 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Ajit Khaparde; +Cc: Somnath Kotur, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/044ad35701140f6b06e893a3da4a34d6ecd5d353

Thanks.

Kevin.

---
From 044ad35701140f6b06e893a3da4a34d6ecd5d353 Mon Sep 17 00:00:00 2001
From: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date: Thu, 24 Oct 2019 13:14:18 +0530
Subject: [PATCH] net/bnxt: fix setting max RSS contexts

[ upstream commit 32e970c1668ddfb892a5fda35ab962f27ba62d9f ]

Configure max RSS contexts in case the firmware indicates a maximal
resource reservation strategy.

Fixes: 6d8109bcb398 ("net/bnxt: check VF resources if resource manager is enabled")

Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com>
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
---
 drivers/net/bnxt/bnxt_hwrm.c | 8 ++++++--
 drivers/net/bnxt/bnxt_hwrm.h | 2 ++
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index 596ab3658..1f8996b7c 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -702,5 +702,5 @@ int bnxt_hwrm_func_reserve_vf_resc(struct bnxt *bp, bool test)
 	HWRM_PREP(req, FUNC_VF_CFG, BNXT_USE_CHIMP_MB);
 
-	req.enables = rte_cpu_to_le_32
+	enables = rte_cpu_to_le_32
 			(HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_RX_RINGS  |
 			HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_TX_RINGS   |
@@ -723,8 +723,11 @@ int bnxt_hwrm_func_reserve_vf_resc(struct bnxt *bp, bool test)
 				HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_L2_CTXS |
 				HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_RSSCOS_CTXS;
-		req.enables |= rte_cpu_to_le_32(enables);
 		req.num_rsscos_ctxs = rte_cpu_to_le_16(BNXT_VF_RSV_NUM_RSS_CTX);
 		req.num_l2_ctxs = rte_cpu_to_le_16(BNXT_VF_RSV_NUM_L2_CTX);
 		req.num_vnics = rte_cpu_to_le_16(BNXT_VF_RSV_NUM_VNIC);
+	} else if (bp->vf_resv_strategy ==
+		   HWRM_FUNC_RESOURCE_QCAPS_OUTPUT_VF_RESV_STRATEGY_MAXIMAL) {
+		enables |= HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_RSSCOS_CTXS;
+		req.num_rsscos_ctxs = rte_cpu_to_le_16(bp->max_rsscos_ctx);
 	}
 
@@ -738,4 +741,5 @@ int bnxt_hwrm_func_reserve_vf_resc(struct bnxt *bp, bool test)
 
 	req.flags = rte_cpu_to_le_32(flags);
+	req.enables |= rte_cpu_to_le_32(enables);
 
 	rc = bnxt_hwrm_send_message(bp, &req, sizeof(req), BNXT_USE_CHIMP_MB);
diff --git a/drivers/net/bnxt/bnxt_hwrm.h b/drivers/net/bnxt/bnxt_hwrm.h
index ec9b3e007..a3a481b2b 100644
--- a/drivers/net/bnxt/bnxt_hwrm.h
+++ b/drivers/net/bnxt/bnxt_hwrm.h
@@ -32,4 +32,6 @@ struct bnxt_cp_ring_info;
 #define HWRM_FUNC_RESOURCE_QCAPS_OUTPUT_VF_RESV_STRATEGY_MINIMAL_STATIC \
 	HWRM_FUNC_RESOURCE_QCAPS_OUTPUT_VF_RESERVATION_STRATEGY_MINIMAL_STATIC
+#define HWRM_FUNC_RESOURCE_QCAPS_OUTPUT_VF_RESV_STRATEGY_MAXIMAL \
+	HWRM_FUNC_RESOURCE_QCAPS_OUTPUT_VF_RESERVATION_STRATEGY_MAXIMAL
 
 #define HWRM_SPEC_CODE_1_8_4		0x10804
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.468886653 +0000
+++ 0035-net-bnxt-fix-setting-max-RSS-contexts.patch	2019-12-10 14:49:39.062457581 +0000
@@ -1 +1 @@
-From 32e970c1668ddfb892a5fda35ab962f27ba62d9f Mon Sep 17 00:00:00 2001
+From 044ad35701140f6b06e893a3da4a34d6ecd5d353 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 32e970c1668ddfb892a5fda35ab962f27ba62d9f ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -16 +17 @@
- drivers/net/bnxt/bnxt_hwrm.c | 4 ++++
+ drivers/net/bnxt/bnxt_hwrm.c | 8 ++++++--
@@ -18 +19 @@
- 2 files changed, 6 insertions(+)
+ 2 files changed, 8 insertions(+), 2 deletions(-)
@@ -21 +22 @@
-index 018113c4c..3eedd08ee 100644
+index 596ab3658..1f8996b7c 100644
@@ -24 +25,12 @@
-@@ -860,4 +860,8 @@ int bnxt_hwrm_func_reserve_vf_resc(struct bnxt *bp, bool test)
+@@ -702,5 +702,5 @@ int bnxt_hwrm_func_reserve_vf_resc(struct bnxt *bp, bool test)
+ 	HWRM_PREP(req, FUNC_VF_CFG, BNXT_USE_CHIMP_MB);
+ 
+-	req.enables = rte_cpu_to_le_32
++	enables = rte_cpu_to_le_32
+ 			(HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_RX_RINGS  |
+ 			HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_TX_RINGS   |
+@@ -723,8 +723,11 @@ int bnxt_hwrm_func_reserve_vf_resc(struct bnxt *bp, bool test)
+ 				HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_L2_CTXS |
+ 				HWRM_FUNC_VF_CFG_INPUT_ENABLES_NUM_RSSCOS_CTXS;
+-		req.enables |= rte_cpu_to_le_32(enables);
+ 		req.num_rsscos_ctxs = rte_cpu_to_le_16(BNXT_VF_RSV_NUM_RSS_CTX);
@@ -32,0 +45,6 @@
+@@ -738,4 +741,5 @@ int bnxt_hwrm_func_reserve_vf_resc(struct bnxt *bp, bool test)
+ 
+ 	req.flags = rte_cpu_to_le_32(flags);
++	req.enables |= rte_cpu_to_le_32(enables);
+ 
+ 	rc = bnxt_hwrm_send_message(bp, &req, sizeof(req), BNXT_USE_CHIMP_MB);
@@ -34 +52 @@
-index fcbce6058..abe5de9db 100644
+index ec9b3e007..a3a481b2b 100644
@@ -37 +55 @@
-@@ -38,4 +38,6 @@ struct bnxt_cp_ring_info;
+@@ -32,4 +32,6 @@ struct bnxt_cp_ring_info;
@@ -43 +61 @@
- #define HWRM_CFA_ADV_FLOW_MGNT_QCAPS_L2_HDR_SRC_FILTER_EN \
+ #define HWRM_SPEC_CODE_1_8_4		0x10804


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

* [dpdk-stable] patch 'net/bnxt: fix writing MTU to FW' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (33 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix setting max RSS contexts' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: expose some missing counters in port stats' " Kevin Traynor
                   ` (26 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Ajit Khaparde; +Cc: Somnath Kotur, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From c55fdd85c7f22b90fce0b37ec35db6936efcc546 Mon Sep 17 00:00:00 2001
From: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date: Thu, 24 Oct 2019 13:14:19 +0530
Subject: [PATCH] net/bnxt: fix writing MTU to FW

[ upstream commit 8d7bdc8c13fb34c1ca5c2ea08943a5c89ebe1a99 ]

We are currently writing the MAX supported MTU size even though
the MTU passed by the application is a different value.
Configure the application specified MTU instead.

Fixes: b7778e8a1c00 ("net/bnxt: refactor to properly allocate resources for PF/VF")

Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
---
 drivers/net/bnxt/bnxt_hwrm.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index 1f8996b7c..614cd47c5 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -2530,5 +2530,6 @@ static int bnxt_hwrm_pf_func_cfg(struct bnxt *bp, int tx_rings)
 			HWRM_FUNC_CFG_INPUT_ENABLES_NUM_HW_RING_GRPS);
 	req.flags = rte_cpu_to_le_32(bp->pf.func_cfg_flags);
-	req.mtu = rte_cpu_to_le_16(BNXT_MAX_MTU);
+	req.mtu = rte_cpu_to_le_16(RTE_MIN(bp->eth_dev->data->mtu,
+					   BNXT_MAX_MTU)); //FW adds hdr sizes
 	req.mru = rte_cpu_to_le_16(BNXT_VNIC_MRU(bp->eth_dev->data->mtu));
 	req.num_rsscos_ctxs = rte_cpu_to_le_16(bp->max_rsscos_ctx);
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.532490984 +0000
+++ 0036-net-bnxt-fix-writing-MTU-to-FW.patch	2019-12-10 14:49:39.066457506 +0000
@@ -1 +1 @@
-From 8d7bdc8c13fb34c1ca5c2ea08943a5c89ebe1a99 Mon Sep 17 00:00:00 2001
+From c55fdd85c7f22b90fce0b37ec35db6936efcc546 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 8d7bdc8c13fb34c1ca5c2ea08943a5c89ebe1a99 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index 3eedd08ee..c777c73bd 100644
+index 1f8996b7c..614cd47c5 100644
@@ -23,2 +24,2 @@
-@@ -2957,5 +2957,6 @@ static int bnxt_hwrm_pf_func_cfg(struct bnxt *bp, int tx_rings)
- 
+@@ -2530,5 +2530,6 @@ static int bnxt_hwrm_pf_func_cfg(struct bnxt *bp, int tx_rings)
+ 			HWRM_FUNC_CFG_INPUT_ENABLES_NUM_HW_RING_GRPS);


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

* [dpdk-stable] patch 'net/bnxt: expose some missing counters in port stats' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (34 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix writing MTU to FW' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bonding: use non deprecated PCI API' " Kevin Traynor
                   ` (25 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Somnath Kotur; +Cc: Ajit Khaparde, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/497f7adf0de7c8c66b7e4f99b823320cabce9848

Thanks.

Kevin.

---
From 497f7adf0de7c8c66b7e4f99b823320cabce9848 Mon Sep 17 00:00:00 2001
From: Somnath Kotur <somnath.kotur@broadcom.com>
Date: Thu, 24 Oct 2019 13:14:25 +0530
Subject: [PATCH] net/bnxt: expose some missing counters in port stats

[ upstream commit bd94753fc79c5a37e249ca440d081fdb7d5dc9fa ]

Rx/Tx Port statistics record PFC enabled frames for each priority.
Modify the Rx/Tx port stats array to report these as well.

Fixes: bfb9c2260be2 ("net/bnxt: support xstats get/reset")

Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
---
 drivers/net/bnxt/bnxt_stats.c | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/drivers/net/bnxt/bnxt_stats.c b/drivers/net/bnxt/bnxt_stats.c
index e0f70781a..ad88fbfe7 100644
--- a/drivers/net/bnxt/bnxt_stats.c
+++ b/drivers/net/bnxt/bnxt_stats.c
@@ -81,4 +81,20 @@ static const struct bnxt_xstats_name_off bnxt_rx_stats_strings[] = {
 	{"rx_runt_frames", offsetof(struct rx_port_stats,
 				rx_runt_frames)},
+	{"rx_pfc_ena_frames_pri0", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri0)},
+	{"rx_pfc_ena_frames_pri1", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri1)},
+	{"rx_pfc_ena_frames_pri2", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri2)},
+	{"rx_pfc_ena_frames_pri3", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri3)},
+	{"rx_pfc_ena_frames_pri4", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri4)},
+	{"rx_pfc_ena_frames_pri5", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri5)},
+	{"rx_pfc_ena_frames_pri6", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri6)},
+	{"rx_pfc_ena_frames_pri7", offsetof(struct rx_port_stats,
+				rx_pfc_ena_frames_pri7)},
 };
 
@@ -136,4 +152,20 @@ static const struct bnxt_xstats_name_off bnxt_tx_stats_strings[] = {
 	{"tx_bytes", offsetof(struct tx_port_stats,
 				tx_bytes)},
+	{"tx_pfc_ena_frames_pri0", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri0)},
+	{"tx_pfc_ena_frames_pri1", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri1)},
+	{"tx_pfc_ena_frames_pri2", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri2)},
+	{"tx_pfc_ena_frames_pri3", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri3)},
+	{"tx_pfc_ena_frames_pri4", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri4)},
+	{"tx_pfc_ena_frames_pri5", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri5)},
+	{"tx_pfc_ena_frames_pri6", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri6)},
+	{"tx_pfc_ena_frames_pri7", offsetof(struct tx_port_stats,
+				tx_pfc_ena_frames_pri7)},
 };
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.599622897 +0000
+++ 0037-net-bnxt-expose-some-missing-counters-in-port-stats.patch	2019-12-10 14:49:39.067457488 +0000
@@ -1 +1 @@
-From bd94753fc79c5a37e249ca440d081fdb7d5dc9fa Mon Sep 17 00:00:00 2001
+From 497f7adf0de7c8c66b7e4f99b823320cabce9848 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit bd94753fc79c5a37e249ca440d081fdb7d5dc9fa ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index fa29f9de1..40b496ac0 100644
+index e0f70781a..ad88fbfe7 100644
@@ -22 +23 @@
-@@ -82,4 +82,20 @@ static const struct bnxt_xstats_name_off bnxt_rx_stats_strings[] = {
+@@ -81,4 +81,20 @@ static const struct bnxt_xstats_name_off bnxt_rx_stats_strings[] = {
@@ -43 +44 @@
-@@ -137,4 +153,20 @@ static const struct bnxt_xstats_name_off bnxt_tx_stats_strings[] = {
+@@ -136,4 +152,20 @@ static const struct bnxt_xstats_name_off bnxt_tx_stats_strings[] = {


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

* [dpdk-stable] patch 'net/bonding: use non deprecated PCI API' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (35 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: expose some missing counters in port stats' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'vhost: fix build on RHEL 7.6 for Power' " Kevin Traynor
                   ` (24 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: David Marchand; +Cc: Thomas Monjalon, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/2f90f0a745b21fb8cb61645cd4096aa0f923a091

Thanks.

Kevin.

---
From 2f90f0a745b21fb8cb61645cd4096aa0f923a091 Mon Sep 17 00:00:00 2001
From: David Marchand <david.marchand@redhat.com>
Date: Fri, 25 Oct 2019 15:56:04 +0200
Subject: [PATCH] net/bonding: use non deprecated PCI API

[ upstream commit ce77e6bf5113650e6d026e0b7fb395b60ab1f363 ]

rte_eal_compare_pci_addr has been deprecated since v17.11.
Convert to rte_pci_addr_cmp.

Fixes: c848b518bbc7 ("net/bonding: support bifurcated driver in eal")

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
---
 drivers/net/bonding/rte_eth_bond_args.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/net/bonding/rte_eth_bond_args.c b/drivers/net/bonding/rte_eth_bond_args.c
index b60fde6a8..977c472d4 100644
--- a/drivers/net/bonding/rte_eth_bond_args.c
+++ b/drivers/net/bonding/rte_eth_bond_args.c
@@ -64,9 +64,8 @@ static inline int
 bond_pci_addr_cmp(const struct rte_device *dev, const void *_pci_addr)
 {
-	struct rte_pci_device *pdev;
+	const struct rte_pci_device *pdev = RTE_DEV_TO_PCI_CONST(dev);
 	const struct rte_pci_addr *paddr = _pci_addr;
 
-	pdev = RTE_DEV_TO_PCI(*(struct rte_device **)(void *)&dev);
-	return rte_eal_compare_pci_addr(&pdev->addr, paddr);
+	return rte_pci_addr_cmp(&pdev->addr, paddr);
 }
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.661581275 +0000
+++ 0038-net-bonding-use-non-deprecated-PCI-API.patch	2019-12-10 14:49:39.067457488 +0000
@@ -1 +1 @@
-From ce77e6bf5113650e6d026e0b7fb395b60ab1f363 Mon Sep 17 00:00:00 2001
+From 2f90f0a745b21fb8cb61645cd4096aa0f923a091 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit ce77e6bf5113650e6d026e0b7fb395b60ab1f363 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index f298ea0e1..bfe03c3d0 100644
+index b60fde6a8..977c472d4 100644
@@ -22 +23 @@
-@@ -61,9 +61,8 @@ static inline int
+@@ -64,9 +64,8 @@ static inline int


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

* [dpdk-stable] patch 'vhost: fix build on RHEL 7.6 for Power' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (36 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bonding: use non deprecated PCI API' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'app/procinfo: use strlcpy for copying string' " Kevin Traynor
                   ` (23 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: David Christensen; +Cc: Tiwei Bie, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/035fed4684cb38eea4a406f7d594618b4d99f5b7

Thanks.

Kevin.

---
From 035fed4684cb38eea4a406f7d594618b4d99f5b7 Mon Sep 17 00:00:00 2001
From: David Christensen <drc@linux.vnet.ibm.com>
Date: Wed, 14 Aug 2019 13:36:41 -0500
Subject: [PATCH] vhost: fix build on RHEL 7.6 for Power

[ upstream commit 4b462021b4c8b3fc4d01839761ed8dfaae4b39e4 ]

Use of %llx print formatting causes meson build error on Power systems with
RHEL 7.6 and gcc 4.8.5.  Replace with PRIx64 macro.

Fixes: 9b62e2da1844 ("vhost: register new regions with userfaultfd")

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
---
 lib/librte_vhost/vhost_user.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
index 1e148fb45..b5de73b4f 100644
--- a/lib/librte_vhost/vhost_user.c
+++ b/lib/librte_vhost/vhost_user.c
@@ -1207,8 +1207,9 @@ vhost_user_set_mem_table(struct virtio_net **pdev, struct VhostUserMsg *msg,
 			}
 			RTE_LOG(INFO, VHOST_CONFIG,
-				"\t userfaultfd registered for range : %llx - %llx\n",
-				reg_struct.range.start,
-				reg_struct.range.start +
-				reg_struct.range.len - 1);
+				"\t userfaultfd registered for range : "
+				"%" PRIx64 " - %" PRIx64 "\n",
+				(uint64_t)reg_struct.range.start,
+				(uint64_t)reg_struct.range.start +
+				(uint64_t)reg_struct.range.len - 1);
 #else
 			goto err_mmap;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.722668600 +0000
+++ 0039-vhost-fix-build-on-RHEL-7.6-for-Power.patch	2019-12-10 14:49:39.070457432 +0000
@@ -1 +1 @@
-From 4b462021b4c8b3fc4d01839761ed8dfaae4b39e4 Mon Sep 17 00:00:00 2001
+From 035fed4684cb38eea4a406f7d594618b4d99f5b7 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 4b462021b4c8b3fc4d01839761ed8dfaae4b39e4 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -19 +20 @@
-index 61ef699ac..2a9fa7c6c 100644
+index 1e148fb45..b5de73b4f 100644
@@ -22 +23 @@
-@@ -1164,8 +1164,9 @@ vhost_user_set_mem_table(struct virtio_net **pdev, struct VhostUserMsg *msg,
+@@ -1207,8 +1207,9 @@ vhost_user_set_mem_table(struct virtio_net **pdev, struct VhostUserMsg *msg,


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

* [dpdk-stable] patch 'app/procinfo: use strlcpy for copying string' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (37 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'vhost: fix build on RHEL 7.6 for Power' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/vm_power: fix type of cmdline token in cli' " Kevin Traynor
                   ` (22 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Ciara Power; +Cc: Reshma Pattan, Bruce Richardson, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From bc12c8f6136f2516e98027be0e5e8a3df6f7c01a Mon Sep 17 00:00:00 2001
From: Ciara Power <ciara.power@intel.com>
Date: Thu, 26 Sep 2019 16:11:59 +0100
Subject: [PATCH] app/procinfo: use strlcpy for copying string

[ upstream commit 7edbf7ddfd7d2453afaad3b72666491d30b616af ]

Replaced strncpy and strcpy with strlcpy.
Also replaced snprintf with strlcpy where applicable.
Using strlcpy is safe practice when copying strings, as it will include
a null terminator.

Fixes: 2deb6b5246d7 ("app/procinfo: add collectd format and host id")
Fixes: 8a37f37fc243 ("app/procinfo: add --show-port")

Reported-by: Reshma Pattan <reshma.pattan@intel.com>
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
---
 app/proc-info/main.c | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/app/proc-info/main.c b/app/proc-info/main.c
index c20effa4f..248f0b2b0 100644
--- a/app/proc-info/main.c
+++ b/app/proc-info/main.c
@@ -168,5 +168,5 @@ proc_info_preparse_args(int argc, char **argv)
 
 		if (err)
-			strcpy(host_id, "unknown");
+			strlcpy(host_id, "unknown", sizeof(host_id));
 	}
 
@@ -335,48 +335,48 @@ static void collectd_resolve_cnt_type(char *cnt_type, size_t cnt_type_len,
 	    (strncmp(cnt_name, "rx_", strlen("rx_")) == 0)) {
 		if (strncmp(type_end, "_errors", strlen("_errors")) == 0)
-			strncpy(cnt_type, "if_rx_errors", cnt_type_len);
+			strlcpy(cnt_type, "if_rx_errors", cnt_type_len);
 		else if (strncmp(type_end, "_dropped", strlen("_dropped")) == 0)
-			strncpy(cnt_type, "if_rx_dropped", cnt_type_len);
+			strlcpy(cnt_type, "if_rx_dropped", cnt_type_len);
 		else if (strncmp(type_end, "_bytes", strlen("_bytes")) == 0)
-			strncpy(cnt_type, "if_rx_octets", cnt_type_len);
+			strlcpy(cnt_type, "if_rx_octets", cnt_type_len);
 		else if (strncmp(type_end, "_packets", strlen("_packets")) == 0)
-			strncpy(cnt_type, "if_rx_packets", cnt_type_len);
+			strlcpy(cnt_type, "if_rx_packets", cnt_type_len);
 		else if (strncmp(type_end, "_placement",
 				 strlen("_placement")) == 0)
-			strncpy(cnt_type, "if_rx_errors", cnt_type_len);
+			strlcpy(cnt_type, "if_rx_errors", cnt_type_len);
 		else if (strncmp(type_end, "_buff", strlen("_buff")) == 0)
-			strncpy(cnt_type, "if_rx_errors", cnt_type_len);
+			strlcpy(cnt_type, "if_rx_errors", cnt_type_len);
 		else
 			/* Does not fit obvious type: use a more generic one */
-			strncpy(cnt_type, "derive", cnt_type_len);
+			strlcpy(cnt_type, "derive", cnt_type_len);
 	} else if ((type_end != NULL) &&
 		(strncmp(cnt_name, "tx_", strlen("tx_"))) == 0) {
 		if (strncmp(type_end, "_errors", strlen("_errors")) == 0)
-			strncpy(cnt_type, "if_tx_errors", cnt_type_len);
+			strlcpy(cnt_type, "if_tx_errors", cnt_type_len);
 		else if (strncmp(type_end, "_dropped", strlen("_dropped")) == 0)
-			strncpy(cnt_type, "if_tx_dropped", cnt_type_len);
+			strlcpy(cnt_type, "if_tx_dropped", cnt_type_len);
 		else if (strncmp(type_end, "_bytes", strlen("_bytes")) == 0)
-			strncpy(cnt_type, "if_tx_octets", cnt_type_len);
+			strlcpy(cnt_type, "if_tx_octets", cnt_type_len);
 		else if (strncmp(type_end, "_packets", strlen("_packets")) == 0)
-			strncpy(cnt_type, "if_tx_packets", cnt_type_len);
+			strlcpy(cnt_type, "if_tx_packets", cnt_type_len);
 		else
 			/* Does not fit obvious type: use a more generic one */
-			strncpy(cnt_type, "derive", cnt_type_len);
+			strlcpy(cnt_type, "derive", cnt_type_len);
 	} else if ((type_end != NULL) &&
 		   (strncmp(cnt_name, "flow_", strlen("flow_"))) == 0) {
 		if (strncmp(type_end, "_filters", strlen("_filters")) == 0)
-			strncpy(cnt_type, "operations", cnt_type_len);
+			strlcpy(cnt_type, "operations", cnt_type_len);
 		else if (strncmp(type_end, "_errors", strlen("_errors")) == 0)
-			strncpy(cnt_type, "errors", cnt_type_len);
+			strlcpy(cnt_type, "errors", cnt_type_len);
 		else if (strncmp(type_end, "_filters", strlen("_filters")) == 0)
-			strncpy(cnt_type, "filter_result", cnt_type_len);
+			strlcpy(cnt_type, "filter_result", cnt_type_len);
 	} else if ((type_end != NULL) &&
 		   (strncmp(cnt_name, "mac_", strlen("mac_"))) == 0) {
 		if (strncmp(type_end, "_errors", strlen("_errors")) == 0)
-			strncpy(cnt_type, "errors", cnt_type_len);
+			strlcpy(cnt_type, "errors", cnt_type_len);
 	} else {
 		/* Does not fit obvious type, or strrchr error: */
 		/* use a more generic type */
-		strncpy(cnt_type, "derive", cnt_type_len);
+		strlcpy(cnt_type, "derive", cnt_type_len);
 	}
 }
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.783104698 +0000
+++ 0040-app-procinfo-use-strlcpy-for-copying-string.patch	2019-12-10 14:49:39.071457413 +0000
@@ -1 +1 @@
-From 7edbf7ddfd7d2453afaad3b72666491d30b616af Mon Sep 17 00:00:00 2001
+From bc12c8f6136f2516e98027be0e5e8a3df6f7c01a Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 7edbf7ddfd7d2453afaad3b72666491d30b616af ]
+
@@ -13 +14,0 @@
-Cc: stable@dpdk.org
@@ -19,2 +20,2 @@
- app/proc-info/main.c | 38 +++++++++++++++++++-------------------
- 1 file changed, 19 insertions(+), 19 deletions(-)
+ app/proc-info/main.c | 36 ++++++++++++++++++------------------
+ 1 file changed, 18 insertions(+), 18 deletions(-)
@@ -23 +24 @@
-index 8cf501d06..abeca4aab 100644
+index c20effa4f..248f0b2b0 100644
@@ -26 +27 @@
-@@ -204,5 +204,5 @@ proc_info_preparse_args(int argc, char **argv)
+@@ -168,5 +168,5 @@ proc_info_preparse_args(int argc, char **argv)
@@ -33 +34 @@
-@@ -399,48 +399,48 @@ static void collectd_resolve_cnt_type(char *cnt_type, size_t cnt_type_len,
+@@ -335,48 +335,48 @@ static void collectd_resolve_cnt_type(char *cnt_type, size_t cnt_type_len,
@@ -99,7 +99,0 @@
-@@ -1350,5 +1350,5 @@ main(int argc, char **argv)
- 		printf("Error from rte_eal_cleanup(), %d\n", ret);
- 
--	snprintf(bdr_str, MAX_STRING_LEN, " ");
-+	strlcpy(bdr_str, " ", MAX_STRING_LEN);
- 	STATS_BDR_STR(50, bdr_str);
- 


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

* [dpdk-stable] patch 'examples/vm_power: fix type of cmdline token in cli' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (38 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'app/procinfo: use strlcpy for copying string' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/l3fwd-power: fix Rx interrupt disabling' " Kevin Traynor
                   ` (21 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: David Hunt, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/9945223e20cecac026735c3ef48db9cd19368b54

Thanks.

Kevin.

---
From 9945223e20cecac026735c3ef48db9cd19368b54 Mon Sep 17 00:00:00 2001
From: Bruce Richardson <bruce.richardson@intel.com>
Date: Tue, 22 Oct 2019 16:43:09 +0100
Subject: [PATCH] examples/vm_power: fix type of cmdline token in cli

[ upstream commit 99dc01446e62361d8d0046c2e007bba86cb8ec30 ]

Building the example with clang gives the error:

  error: expression which evaluates to zero treated as a null pointer
  constant of type 'const char *' [-Werror,-Wnon-literal-null-conversion]
                        lcore_id, UINT8);
                                  ^~~~~

This error is due to the wrong data type being given for the
cmd_set_cpu_freq_core_num value - it was specified as string rather than
numeric type.

Fixes: f5e5c3347ae3 ("examples/vm_power: cli in guest")

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: David Hunt <david.hunt@intel.com>
---
 examples/vm_power_manager/guest_cli/vm_power_cli_guest.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c
index 2d9e7689a..1a55479a2 100644
--- a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c
+++ b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c
@@ -159,5 +159,5 @@ cmdline_parse_token_string_t cmd_set_cpu_freq =
 	TOKEN_STRING_INITIALIZER(struct cmd_set_cpu_freq_result,
 			set_cpu_freq, "set_cpu_freq");
-cmdline_parse_token_string_t cmd_set_cpu_freq_core_num =
+cmdline_parse_token_num_t cmd_set_cpu_freq_core_num =
 	TOKEN_NUM_INITIALIZER(struct cmd_set_cpu_freq_result,
 			lcore_id, UINT8);
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.847141346 +0000
+++ 0041-examples-vm_power-fix-type-of-cmdline-token-in-cli.patch	2019-12-10 14:49:39.071457413 +0000
@@ -1 +1 @@
-From 99dc01446e62361d8d0046c2e007bba86cb8ec30 Mon Sep 17 00:00:00 2001
+From 9945223e20cecac026735c3ef48db9cd19368b54 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 99dc01446e62361d8d0046c2e007bba86cb8ec30 ]
+
@@ -18 +19,0 @@
-Cc: stable@dpdk.org
@@ -27 +28 @@
-index fe09b0778..610d9aeac 100644
+index 2d9e7689a..1a55479a2 100644
@@ -30 +31 @@
-@@ -172,5 +172,5 @@ cmdline_parse_token_string_t cmd_set_cpu_freq =
+@@ -159,5 +159,5 @@ cmdline_parse_token_string_t cmd_set_cpu_freq =


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

* [dpdk-stable] patch 'examples/l3fwd-power: fix Rx interrupt disabling' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (39 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/vm_power: fix type of cmdline token in cli' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'power: fix socket indicator value' " Kevin Traynor
                   ` (20 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Xiao Zhang; +Cc: Marvin Liu, David Hunt, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From fbf65ffa07f781f3d590e2ed3ae1d6a3dfdd2143 Mon Sep 17 00:00:00 2001
From: Xiao Zhang <xiao.zhang@intel.com>
Date: Wed, 11 Sep 2019 00:10:14 +0800
Subject: [PATCH] examples/l3fwd-power: fix Rx interrupt disabling

[ upstream commit 0412cfeff907bb9102a2ca834e95ef8c6767f538 ]

Interrupt will not be received when disabling RX interrupt without
synchronization mechanism sometimes which leads to wake up issue.
Add spinlock to fix it.

Fixes: b736d64787 ("examples/l3fwd-power: disable Rx interrupt when waking up")

Signed-off-by: Xiao Zhang <xiao.zhang@intel.com>
Reviewed-by: Marvin Liu <yong.liu@intel.com>
Acked-by: David Hunt <david.hunt@intel.com>
---
 examples/l3fwd-power/main.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 3421de8ec..ec06129c1 100644
--- a/examples/l3fwd-power/main.c
+++ b/examples/l3fwd-power/main.c
@@ -815,5 +815,7 @@ sleep_until_rx_interrupt(int num)
 		queue_id = ((uintptr_t)data) &
 			RTE_LEN2MASK(CHAR_BIT, uint8_t);
+		rte_spinlock_lock(&(locks[port_id]));
 		rte_eth_dev_rx_intr_disable(port_id, queue_id);
+		rte_spinlock_unlock(&(locks[port_id]));
 		RTE_LOG(INFO, L3FWD_POWER,
 			"lcore %u is waked up from rx interrupt on"
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.906673061 +0000
+++ 0042-examples-l3fwd-power-fix-Rx-interrupt-disabling.patch	2019-12-10 14:49:39.074457357 +0000
@@ -1 +1 @@
-From 0412cfeff907bb9102a2ca834e95ef8c6767f538 Mon Sep 17 00:00:00 2001
+From fbf65ffa07f781f3d590e2ed3ae1d6a3dfdd2143 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 0412cfeff907bb9102a2ca834e95ef8c6767f538 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index a03f64a1a..d049d8a5d 100644
+index 3421de8ec..ec06129c1 100644
@@ -24 +25 @@
-@@ -881,5 +881,7 @@ sleep_until_rx_interrupt(int num)
+@@ -815,5 +815,7 @@ sleep_until_rx_interrupt(int num)


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

* [dpdk-stable] patch 'power: fix socket indicator value' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (40 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/l3fwd-power: fix Rx interrupt disabling' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/vm_power: fix build without i40e' " Kevin Traynor
                   ` (19 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Marcin Hajkowski; +Cc: Maxime Coquelin, Anatoly Burakov, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/69d685054d2787da287b98f81c9855e6eeda230f

Thanks.

Kevin.

---
From 69d685054d2787da287b98f81c9855e6eeda230f Mon Sep 17 00:00:00 2001
From: Marcin Hajkowski <marcinx.hajkowski@intel.com>
Date: Fri, 27 Sep 2019 09:42:13 +0100
Subject: [PATCH] power: fix socket indicator value

[ upstream commit b4b2f84a5970709e7fb060e3bcd4afb7c19b0121 ]

Currently 0 is being used for not connected slot indication.
This is not consistent with linux doc which identifies 0 as valid
(connected) slot, thus modification was done to change it.

Fixes: cd0d5547 ("power: vm communication channels in guest")

Signed-off-by: Marcin Hajkowski <marcinx.hajkowski@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 lib/librte_power/guest_channel.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/lib/librte_power/guest_channel.c b/lib/librte_power/guest_channel.c
index c17ea46b4..9cf7d2cb2 100644
--- a/lib/librte_power/guest_channel.c
+++ b/lib/librte_power/guest_channel.c
@@ -20,5 +20,5 @@
 #define RTE_LOGTYPE_GUEST_CHANNEL RTE_LOGTYPE_USER1
 
-static int global_fds[RTE_MAX_LCORE];
+static int global_fds[RTE_MAX_LCORE] = { [0 ... RTE_MAX_LCORE-1] = -1 };
 
 int
@@ -36,5 +36,5 @@ guest_channel_host_connect(const char *path, unsigned int lcore_id)
 	}
 	/* check if path is already open */
-	if (global_fds[lcore_id] != 0) {
+	if (global_fds[lcore_id] != -1) {
 		RTE_LOG(ERR, GUEST_CHANNEL, "Channel(%u) is already open with fd %d\n",
 				lcore_id, global_fds[lcore_id]);
@@ -85,5 +85,5 @@ guest_channel_host_connect(const char *path, unsigned int lcore_id)
 error:
 	close(fd);
-	global_fds[lcore_id] = 0;
+	global_fds[lcore_id] = -1;
 	return -1;
 }
@@ -101,5 +101,5 @@ guest_channel_send_msg(struct channel_packet *pkt, unsigned int lcore_id)
 	}
 
-	if (global_fds[lcore_id] == 0) {
+	if (global_fds[lcore_id] < 0) {
 		RTE_LOG(ERR, GUEST_CHANNEL, "Channel is not connected\n");
 		return -1;
@@ -135,7 +135,7 @@ guest_channel_host_disconnect(unsigned int lcore_id)
 		return;
 	}
-	if (global_fds[lcore_id] == 0)
+	if (global_fds[lcore_id] < 0)
 		return;
 	close(global_fds[lcore_id]);
-	global_fds[lcore_id] = 0;
+	global_fds[lcore_id] = -1;
 }
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:41.966700696 +0000
+++ 0043-power-fix-socket-indicator-value.patch	2019-12-10 14:49:39.074457357 +0000
@@ -1 +1 @@
-From b4b2f84a5970709e7fb060e3bcd4afb7c19b0121 Mon Sep 17 00:00:00 2001
+From 69d685054d2787da287b98f81c9855e6eeda230f Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit b4b2f84a5970709e7fb060e3bcd4afb7c19b0121 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'examples/vm_power: fix build without i40e' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (41 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'power: fix socket indicator value' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'usertools: fix pmdinfo with python 3 and pyelftools>=0.24' " Kevin Traynor
                   ` (18 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: David Hunt; +Cc: Bruce Richardson, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From dc90a9467232103f42a1fedc9bc788675ae32e27 Mon Sep 17 00:00:00 2001
From: David Hunt <david.hunt@intel.com>
Date: Thu, 24 Oct 2019 15:26:10 +0100
Subject: [PATCH] examples/vm_power: fix build without i40e

[ upstream commit e4d028a0fb53809a341f62a39e59f9e13e7c7f59 ]

channel_monitor.c was dependent on i40e driver being available.
This is only necessary for the TRAFFIC policy, so use #ifdef's
to not call these when i40e not available.

Fixes: f14791a8126e ("examples/vm_power_mgr: add policy to channels")

Signed-off-by: David Hunt <david.hunt@intel.com>
Tested-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
---
 examples/vm_power_manager/channel_monitor.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/examples/vm_power_manager/channel_monitor.c b/examples/vm_power_manager/channel_monitor.c
index b5b7c6787..1d6d7ec6d 100644
--- a/examples/vm_power_manager/channel_monitor.c
+++ b/examples/vm_power_manager/channel_monitor.c
@@ -28,5 +28,7 @@
 #include <rte_cycles.h>
 #include <rte_ethdev.h>
+#ifdef RTE_LIBRTE_I40E_PMD
 #include <rte_pmd_i40e.h>
+#endif
 
 #include <libvirt/libvirt.h>
@@ -408,6 +410,10 @@ get_pfid(struct policy *pol)
 
 		RTE_ETH_FOREACH_DEV(x) {
+#ifdef RTE_LIBRTE_I40E_PMD
 			ret = rte_pmd_i40e_query_vfid_by_mac(x,
 				(struct ether_addr *)&(pol->pkt.vfid[i]));
+#else
+			ret = -ENOTSUP;
+#endif
 			if (ret != -EINVAL) {
 				pol->port[i] = x;
@@ -495,8 +501,11 @@ get_pkt_diff(struct policy *pol)
 	double rdtsc_curr, rdtsc_diff, diff;
 	int x;
+#ifdef RTE_LIBRTE_I40E_PMD
 	struct rte_eth_stats vf_stats;
+#endif
 
 	for (x = 0; x < pol->pkt.nb_mac_to_monitor; x++) {
 
+#ifdef RTE_LIBRTE_I40E_PMD
 		/*Read vsi stats*/
 		if (rte_pmd_i40e_get_vf_stats(x, pol->pfid[x], &vf_stats) == 0)
@@ -504,4 +513,7 @@ get_pkt_diff(struct policy *pol)
 		else
 			vsi_pkt_count = -1;
+#else
+		vsi_pkt_count = -1;
+#endif
 
 		vsi_pkt_total += vsi_pkt_count;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.026352624 +0000
+++ 0044-examples-vm_power-fix-build-without-i40e.patch	2019-12-10 14:49:39.076457320 +0000
@@ -1 +1 @@
-From e4d028a0fb53809a341f62a39e59f9e13e7c7f59 Mon Sep 17 00:00:00 2001
+From dc90a9467232103f42a1fedc9bc788675ae32e27 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit e4d028a0fb53809a341f62a39e59f9e13e7c7f59 ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index 0c73fac55..29e1cb64d 100644
+index b5b7c6787..1d6d7ec6d 100644
@@ -24 +25 @@
-@@ -29,5 +29,7 @@
+@@ -28,5 +28,7 @@
@@ -32 +33 @@
-@@ -437,6 +439,10 @@ get_pfid(struct policy *pol)
+@@ -408,6 +410,10 @@ get_pfid(struct policy *pol)
@@ -37 +38 @@
- 				(struct rte_ether_addr *)&(pol->pkt.vfid[i]));
+ 				(struct ether_addr *)&(pol->pkt.vfid[i]));
@@ -43 +44 @@
-@@ -532,8 +538,11 @@ get_pkt_diff(struct policy *pol)
+@@ -495,8 +501,11 @@ get_pkt_diff(struct policy *pol)
@@ -55 +56 @@
-@@ -541,4 +550,7 @@ get_pkt_diff(struct policy *pol)
+@@ -504,4 +513,7 @@ get_pkt_diff(struct policy *pol)


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

* [dpdk-stable] patch 'usertools: fix pmdinfo with python 3 and pyelftools>=0.24' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (42 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/vm_power: fix build without i40e' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'usertools: fix telemetry client with python 3' " Kevin Traynor
                   ` (17 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Robin Jarry; +Cc: Olivier Matz, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From ce007065793c0918e01c76618d0d9cedfb533145 Mon Sep 17 00:00:00 2001
From: Robin Jarry <robin.jarry@6wind.com>
Date: Tue, 15 Oct 2019 14:39:17 +0200
Subject: [PATCH] usertools: fix pmdinfo with python 3 and pyelftools>=0.24

[ upstream commit 4da069194ef4578aac7ae10cf05abd992c61723c ]

Running dpdk-pmdinfo.py on Ubuntu 18.04 (bionic) with python 3 and
pyelftools installed produces no output but no error is reported
neither:

  ~$ python3 usertools/dpdk-pmdinfo.py -r build/app/testpmd
  ~$ echo $?
  0

While with python 2, it works:

  ~# python2 usertools/dpdk-pmdinfo.py -r build/app/testpmd
  {"pci_ids": [], "name": "dpio"}
  {"pci_ids": [], "name": "dpbp"}
  {"pci_ids": [], "name": "dpaa2_qdma"}
  .....

On Ubuntu 18.04, pyelftools is version 0.24. The change log of
pyelftools v0.24 says:

 - Symbol/section names are strings internally now, not bytestrings
   (this may affect API usage in Python 3) (#76).

We cannot guess which version of pyelftools is actually being used. The
elftools.__version__ symbol is not consistent with each distro's package
version. For example, on Ubuntu 16.04 (xenial), the .deb package version
is '0.23-2' but elftools.__version__ contains '0.25'. This is certainly
due to partial backports.

To have a more consistent behaviour of this script across all versions
of python, add the unicode_literals future import so that literal
strings are now always "unicode".

Add 2 utility functions to force a string into bytes or bytes into an
unicode string.

Force pyelftools return values to unicode strings (will do nothing with
recent version of pyelftools).

If elffile.get_section_by_name returns None with a unicode section name,
try with the same one encoded as bytes.

Also, replace all open() calls by io.open() which behaves like the
builtin open in python 3. The only non-binary opened file is
/usr/share/hwdata/pci.ids which is UTF-8 encoded text. Explicitly
specify that encoding.

Link: https://github.com/eliben/pyelftools/blob/v0.24/CHANGES#L7
Link: https://github.com/eliben/pyelftools/commit/108eaea9e75a8b5a

Fixes: 54ca545dce4b ("make python scripts python2/3 compliant")

Signed-off-by: Robin Jarry <robin.jarry@6wind.com>
Reviewed-by: Olivier Matz <olivier.matz@6wind.com>
---
 usertools/dpdk-pmdinfo.py | 65 +++++++++++++++++++++++++++------------
 1 file changed, 46 insertions(+), 19 deletions(-)

diff --git a/usertools/dpdk-pmdinfo.py b/usertools/dpdk-pmdinfo.py
index 03623d5b8..069a3bf12 100755
--- a/usertools/dpdk-pmdinfo.py
+++ b/usertools/dpdk-pmdinfo.py
@@ -9,5 +9,7 @@
 # -------------------------------------------------------------------------
 from __future__ import print_function
+from __future__ import unicode_literals
 import json
+import io
 import os
 import platform
@@ -15,5 +17,5 @@ import string
 import sys
 from elftools.common.exceptions import ELFError
-from elftools.common.py3compat import (byte2int, bytes2str, str2bytes)
+from elftools.common.py3compat import byte2int
 from elftools.elf.elffile import ELFFile
 from optparse import OptionParser
@@ -214,5 +216,6 @@ class PCIIds:
         Reads the local file
         """
-        self.contents = open(filename).readlines()
+        with io.open(filename, 'r', encoding='utf-8') as f:
+            self.contents = f.readlines()
         self.date = self.findDate(self.contents)
 
@@ -268,5 +271,11 @@ class ReadElf(object):
         except ValueError:
             # Not a number. Must be a name then
-            return self.elffile.get_section_by_name(str2bytes(spec))
+            section = self.elffile.get_section_by_name(force_unicode(spec))
+            if section is None:
+                # No match with a unicode name.
+                # Some versions of pyelftools (<= 0.23) store internal strings
+                # as bytes. Try again with the name encoded as bytes.
+                section = self.elffile.get_section_by_name(force_bytes(spec))
+            return section
 
     def pretty_print_pmdinfo(self, pmdinfo):
@@ -340,5 +349,6 @@ class ReadElf(object):
                 endptr += 1
 
-            mystring = bytes2str(data[dataptr:endptr])
+            # pyelftools may return byte-strings, force decode them
+            mystring = force_unicode(data[dataptr:endptr])
             rc = mystring.find("PMD_INFO_STRING")
             if (rc != -1):
@@ -349,7 +359,8 @@ class ReadElf(object):
     def find_librte_eal(self, section):
         for tag in section.iter_tags():
-            if tag.entry.d_tag == 'DT_NEEDED':
-                if "librte_eal" in tag.needed:
-                    return tag.needed
+            # pyelftools may return byte-strings, force decode them
+            if force_unicode(tag.entry.d_tag) == 'DT_NEEDED':
+                if "librte_eal" in force_unicode(tag.needed):
+                    return force_unicode(tag.needed)
         return None
 
@@ -374,5 +385,5 @@ class ReadElf(object):
                 if raw_output is False:
                     print("Scanning for autoload path in %s" % library)
-                scanfile = open(library, 'rb')
+                scanfile = io.open(library, 'rb')
                 scanelf = ReadElf(scanfile, sys.stdout)
         except AttributeError:
@@ -404,5 +415,6 @@ class ReadElf(object):
                 endptr += 1
 
-            mystring = bytes2str(data[dataptr:endptr])
+            # pyelftools may return byte-strings, force decode them
+            mystring = force_unicode(data[dataptr:endptr])
             rc = mystring.find("DPDK_PLUGIN_PATH")
             if (rc != -1):
@@ -417,6 +429,7 @@ class ReadElf(object):
     def get_dt_runpath(self, dynsec):
         for tag in dynsec.iter_tags():
-            if tag.entry.d_tag == 'DT_RUNPATH':
-                return tag.runpath
+            # pyelftools may return byte-strings, force decode them
+            if force_unicode(tag.entry.d_tag) == 'DT_RUNPATH':
+                return force_unicode(tag.runpath)
         return ""
 
@@ -439,8 +452,8 @@ class ReadElf(object):
 
         for tag in dynsec.iter_tags():
-            if tag.entry.d_tag == 'DT_NEEDED':
-                rc = tag.needed.find(b"librte_pmd")
-                if (rc != -1):
-                    library = search_file(tag.needed,
+            # pyelftools may return byte-strings, force decode them
+            if force_unicode(tag.entry.d_tag) == 'DT_NEEDED':
+                if 'librte_pmd' in force_unicode(tag.needed):
+                    library = search_file(force_unicode(tag.needed),
                                           runpath + ":" + ldlibpath +
                                           ":/usr/lib64:/lib64:/usr/lib:/lib")
@@ -448,5 +461,5 @@ class ReadElf(object):
                         if raw_output is False:
                             print("Scanning %s for pmd information" % library)
-                        with open(library, 'rb') as file:
+                        with io.open(library, 'rb') as file:
                             try:
                                 libelf = ReadElf(file, sys.stdout)
@@ -459,4 +472,18 @@ class ReadElf(object):
 
 
+# compat: remove force_unicode & force_bytes when pyelftools<=0.23 support is
+# dropped.
+def force_unicode(s):
+    if hasattr(s, 'decode') and callable(s.decode):
+        s = s.decode('latin-1')  # same encoding used in pyelftools py3compat
+    return s
+
+
+def force_bytes(s):
+    if hasattr(s, 'encode') and callable(s.encode):
+        s = s.encode('latin-1')  # same encoding used in pyelftools py3compat
+    return s
+
+
 def scan_autoload_path(autoload_path):
     global raw_output
@@ -477,5 +504,5 @@ def scan_autoload_path(autoload_path):
         if os.path.isfile(dpath):
             try:
-                file = open(dpath, 'rb')
+                file = io.open(dpath, 'rb')
                 readelf = ReadElf(file, sys.stdout)
             except ELFError:
@@ -504,5 +531,5 @@ def scan_for_autoload_pmds(dpdk_path):
         return
 
-    file = open(dpdk_path, 'rb')
+    file = io.open(dpdk_path, 'rb')
     try:
         readelf = ReadElf(file, sys.stdout)
@@ -596,5 +623,5 @@ def main(stream=None):
         sys.exit(1)
 
-    with open(myelffile, 'rb') as file:
+    with io.open(myelffile, 'rb') as file:
         try:
             readelf = ReadElf(file, sys.stdout)
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.092757126 +0000
+++ 0045-usertools-fix-pmdinfo-with-python-3-and-pyelftools-0.patch	2019-12-10 14:49:39.077457301 +0000
@@ -1 +1 @@
-From 4da069194ef4578aac7ae10cf05abd992c61723c Mon Sep 17 00:00:00 2001
+From ce007065793c0918e01c76618d0d9cedfb533145 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 4da069194ef4578aac7ae10cf05abd992c61723c ]
+
@@ -56 +57,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'usertools: fix telemetry client with python 3' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (43 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'usertools: fix pmdinfo with python 3 and pyelftools>=0.24' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'doc: fix description of links to EAL options pages' " Kevin Traynor
                   ` (16 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Robin Jarry; +Cc: Stephen Hemminger, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/66742b2c696789ef642042d035284bf1fc4f3a26

Thanks.

Kevin.

---
From 66742b2c696789ef642042d035284bf1fc4f3a26 Mon Sep 17 00:00:00 2001
From: Robin Jarry <robin.jarry@6wind.com>
Date: Thu, 17 Oct 2019 19:32:12 +0200
Subject: [PATCH] usertools: fix telemetry client with python 3

[ upstream commit fe35622659edc678992aea389beb152105051e7f ]

When running the dpdk-telemetry-client.py with python 3, we get the
following syntax errors:

  File "usertools/dpdk-telemetry-client.py", line 70
      print "\nResponse: \n", str(data)
                           ^
  SyntaxError: invalid syntax

  File "usertools/dpdk-telemetry-client.py", line 93
      print "\nResponse: \n", str(data)
                           ^
  SyntaxError: invalid syntax

  File "usertools/dpdk-telemetry-client.py", line 111
      file_path = sys.argv[1]
                            ^
  TabError: inconsistent use of tabs and spaces in indentation

Import print_function from __future__ and add parentheses where missing.
Also, use spaces for indentation everywhere.

Fixes: d1b94da4a4e0 ("usertools: add client script for telemetry")
Fixes: 53f293c9a783 ("usertools: replace unsafe input function")
Fixes: 4080e46c8078 ("telemetry: support global metrics")

Signed-off-by: Robin Jarry <robin.jarry@6wind.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
---
 usertools/dpdk-telemetry-client.py | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/usertools/dpdk-telemetry-client.py b/usertools/dpdk-telemetry-client.py
index e0587022c..1c61a2a28 100644
--- a/usertools/dpdk-telemetry-client.py
+++ b/usertools/dpdk-telemetry-client.py
@@ -2,4 +2,6 @@
 # Copyright(c) 2018 Intel Corporation
 
+from __future__ import print_function
+
 import socket
 import os
@@ -15,7 +17,7 @@ DEFAULT_FP = "/var/run/dpdk/default_client"
 
 try:
-	raw_input  # Python 2
+    raw_input  # Python 2
 except NameError:
-	raw_input = input  # Python 3
+    raw_input = input  # Python 3
 
 class Socket:
@@ -73,5 +75,5 @@ class Client:
         self.socket.client_fd.send(METRICS_REQ)
         data = self.socket.client_fd.recv(BUFFER_SIZE)
-        print "\nResponse: \n", str(data)
+        print("\nResponse: \n", str(data))
 
     def repeatedlyRequestMetrics(self, sleep_time): # Recursively requests metrics for given client
@@ -112,8 +114,8 @@ if __name__ == "__main__":
     file_path = ""
     if (len(sys.argv) == 2):
-	file_path = sys.argv[1]
+        file_path = sys.argv[1]
     else:
         print("Warning - No filepath passed, using default (" + DEFAULT_FP + ").")
-	file_path = DEFAULT_FP
+        file_path = DEFAULT_FP
     client = Client()
     client.getFilepath(file_path)
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.153148203 +0000
+++ 0046-usertools-fix-telemetry-client-with-python-3.patch	2019-12-10 14:49:39.077457301 +0000
@@ -1 +1 @@
-From fe35622659edc678992aea389beb152105051e7f Mon Sep 17 00:00:00 2001
+From 66742b2c696789ef642042d035284bf1fc4f3a26 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit fe35622659edc678992aea389beb152105051e7f ]
+
@@ -30 +31,0 @@
-Cc: stable@dpdk.org
@@ -35,2 +36,2 @@
- usertools/dpdk-telemetry-client.py | 14 ++++++++------
- 1 file changed, 8 insertions(+), 6 deletions(-)
+ usertools/dpdk-telemetry-client.py | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
@@ -39 +40 @@
-index 60fe97af7..e06d6306c 100755
+index e0587022c..1c61a2a28 100644
@@ -42 +43 @@
-@@ -3,4 +3,6 @@
+@@ -2,4 +2,6 @@
@@ -49 +50 @@
-@@ -17,7 +19,7 @@ DEFAULT_FP = "/var/run/dpdk/default_client"
+@@ -15,7 +17,7 @@ DEFAULT_FP = "/var/run/dpdk/default_client"
@@ -59 +60 @@
-@@ -75,5 +77,5 @@ class Client:
+@@ -73,5 +75,5 @@ class Client:
@@ -66,8 +67 @@
-@@ -89,5 +91,5 @@ class Client:
-         self.socket.client_fd.send(GLOBAL_METRICS_REQ)
-         data = self.socket.client_fd.recv(BUFFER_SIZE)
--        print "\nResponse: \n", str(data)
-+        print("\nResponse: \n", str(data))
- 
-     def interactiveMenu(self, sleep_time): # Creates Interactive menu within the script
-@@ -122,8 +124,8 @@ if __name__ == "__main__":
+@@ -112,8 +114,8 @@ if __name__ == "__main__":


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

* [dpdk-stable] patch 'doc: fix description of links to EAL options pages' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (44 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'usertools: fix telemetry client with python 3' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'common/dpaax: fallback to check separate memory node for VM' " Kevin Traynor
                   ` (15 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Dekel Peled; +Cc: Anatoly Burakov, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From a6aa809639cf072112d84750936fb5a698f923b4 Mon Sep 17 00:00:00 2001
From: Dekel Peled <dekelp@mellanox.com>
Date: Thu, 24 Oct 2019 16:17:51 +0300
Subject: [PATCH] doc: fix description of links to EAL options pages

[ upstream commit c41c100b2278ed4d56fc548697c90e103cc523e2 ]

Documentation includes separate pages of EAL command-line options for
Linux and for FreeBSD.
Links to these pages use the same text 'EAL parameters', so it is not
clear which link to use for which environment.

This patch adds the text '(Linux)' and '(FreeBSD)' where relevant, to
clearly identify the links.

Fixes: 3ee567cfec37 ("doc: document all EAL parameters in one place")

Signed-off-by: Dekel Peled <dekelp@mellanox.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 doc/guides/sample_app_ug/intro.rst    | 6 +++---
 doc/guides/testpmd_app_ug/run_app.rst | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/doc/guides/sample_app_ug/intro.rst b/doc/guides/sample_app_ug/intro.rst
index 90704194a..71d99f981 100644
--- a/doc/guides/sample_app_ug/intro.rst
+++ b/doc/guides/sample_app_ug/intro.rst
@@ -16,7 +16,7 @@ Running Sample Applications
 Some sample applications may have their own command-line parameters described in
 their respective guides, however all of them also share the same EAL parameters.
-Please refer to  :doc:`../linux_gsg/linux_eal_parameters` or
-:doc:`../freebsd_gsg/freebsd_eal_parameters` for a list of available EAL
-command-line options.
+Please refer to :doc:`EAL parameters (Linux) <../linux_gsg/linux_eal_parameters>`
+or :doc:`EAL parameters (FreeBSD) <../freebsd_gsg/freebsd_eal_parameters>` for
+a list of available EAL command-line options.
 
 
diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_ug/run_app.rst
index 89df03166..5a3ad411a 100644
--- a/doc/guides/testpmd_app_ug/run_app.rst
+++ b/doc/guides/testpmd_app_ug/run_app.rst
@@ -8,7 +8,7 @@ EAL Command-line Options
 ------------------------
 
-Please refer to  :doc:`../linux_gsg/linux_eal_parameters` or
-:doc:`../freebsd_gsg/freebsd_eal_parameters` for a list of available EAL
-command-line options.
+Please refer to :doc:`EAL parameters (Linux) <../linux_gsg/linux_eal_parameters>`
+or :doc:`EAL parameters (FreeBSD) <../freebsd_gsg/freebsd_eal_parameters>` for
+a list of available EAL command-line options.
 
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.210494782 +0000
+++ 0047-doc-fix-description-of-links-to-EAL-options-pages.patch	2019-12-10 14:49:39.079457264 +0000
@@ -1 +1 @@
-From c41c100b2278ed4d56fc548697c90e103cc523e2 Mon Sep 17 00:00:00 2001
+From a6aa809639cf072112d84750936fb5a698f923b4 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c41c100b2278ed4d56fc548697c90e103cc523e2 ]
+
@@ -15 +16,0 @@
-Cc: stable@dpdk.org
@@ -25 +26 @@
-index 6a3b6722e..0b4ab1ba4 100644
+index 90704194a..71d99f981 100644
@@ -40 +41 @@
-index ef677ba2f..00e0c2ac5 100644
+index 89df03166..5a3ad411a 100644


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

* [dpdk-stable] patch 'common/dpaax: fallback to check separate memory node for VM' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (45 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'doc: fix description of links to EAL options pages' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'doc: fix description of versioning macros' " Kevin Traynor
                   ` (14 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Nipun Gupta; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From 7a93e041dd69d38a7ca89ee3708ea5a71b818074 Mon Sep 17 00:00:00 2001
From: Nipun Gupta <nipun.gupta@nxp.com>
Date: Tue, 5 Nov 2019 19:53:15 +0530
Subject: [PATCH] common/dpaax: fallback to check separate memory node for VM

[ upstream commit c9d9825bea486d4490a02ce2c5672c5a16891fab ]

In Virtual Machine the memory node in the device tree is at
'/proc/device-tree/memory/reg' which is separate from the memory
node path on the host. This patch enables check on both the paths.

Fixes: 2f3d633aa593 ("common/dpaax: add library for PA/VA translation table")

Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
---
 drivers/common/dpaax/dpaax_iova_table.c | 7 +++++--
 drivers/common/dpaax/dpaax_iova_table.h | 2 ++
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/common/dpaax/dpaax_iova_table.c b/drivers/common/dpaax/dpaax_iova_table.c
index ae0af0919..b4e50f735 100644
--- a/drivers/common/dpaax/dpaax_iova_table.c
+++ b/drivers/common/dpaax/dpaax_iova_table.c
@@ -69,7 +69,10 @@ read_memory_node(unsigned int *count)
 
 	ret = glob(MEM_NODE_PATH_GLOB, 0, NULL, &result);
+	if (ret != 0)
+		ret = glob(MEM_NODE_PATH_GLOB_VM, 0, NULL, &result);
+
 	if (ret != 0) {
-		DPAAX_DEBUG("Unable to glob device-tree memory node: (%s)(%d)",
-			    MEM_NODE_PATH_GLOB, ret);
+		DPAAX_DEBUG("Unable to glob device-tree memory node (err: %d)",
+			ret);
 		goto out;
 	}
diff --git a/drivers/common/dpaax/dpaax_iova_table.h b/drivers/common/dpaax/dpaax_iova_table.h
index 138827e7b..fef97f6dd 100644
--- a/drivers/common/dpaax/dpaax_iova_table.h
+++ b/drivers/common/dpaax/dpaax_iova_table.h
@@ -46,4 +46,6 @@ extern struct dpaax_iova_table *dpaax_iova_table_p;
  */
 #define MEM_NODE_PATH_GLOB "/proc/device-tree/memory[@0-9]*/reg"
+/* For Virtual Machines memory node is at different path (below) */
+#define MEM_NODE_PATH_GLOB_VM "/proc/device-tree/memory/reg"
 /* Device file should be multiple of 16 bytes, each containing 8 byte of addr
  * and its length. Assuming max of 5 entries.
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.274237539 +0000
+++ 0048-common-dpaax-fallback-to-check-separate-memory-node-.patch	2019-12-10 14:49:39.080457245 +0000
@@ -1 +1 @@
-From c9d9825bea486d4490a02ce2c5672c5a16891fab Mon Sep 17 00:00:00 2001
+From 7a93e041dd69d38a7ca89ee3708ea5a71b818074 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c9d9825bea486d4490a02ce2c5672c5a16891fab ]
+
@@ -11 +12,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index 43c9c72e6..98b076e09 100644
+index ae0af0919..b4e50f735 100644


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

* [dpdk-stable] patch 'doc: fix description of versioning macros' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (46 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'common/dpaax: fallback to check separate memory node for VM' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'eventdev: fix possible use of uninitialized var' " Kevin Traynor
                   ` (13 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Andrzej Ostruszka; +Cc: Neil Horman, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/65ccd7c1cb03143bf019b6dcfc5ba2184d02a9a6

Thanks.

Kevin.

---
From 65ccd7c1cb03143bf019b6dcfc5ba2184d02a9a6 Mon Sep 17 00:00:00 2001
From: Andrzej Ostruszka <aostruszka@marvell.com>
Date: Thu, 7 Nov 2019 16:03:07 +0100
Subject: [PATCH] doc: fix description of versioning macros

[ upstream commit 519e6548f7a679d769182866a71df98f6b6a85d8 ]

This patch fixes documentation of versioning macros so that they are
aligned with their implementation (no underscore is added by macros).

Fixes: f1ef9794f9bd ("doc: add ABI guidelines")

Signed-off-by: Andrzej Ostruszka <aostruszka@marvell.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
---
 doc/guides/contributing/versioning.rst | 4 ++--
 lib/librte_compat/rte_compat.h         | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/doc/guides/contributing/versioning.rst b/doc/guides/contributing/versioning.rst
index fe17c7f13..32618fc83 100644
--- a/doc/guides/contributing/versioning.rst
+++ b/doc/guides/contributing/versioning.rst
@@ -177,9 +177,9 @@ The macros exported are:
 
 * ``VERSION_SYMBOL(b, e, n)``: Creates a symbol version table entry binding
-  versioned symbol ``b@DPDK_n`` to the internal function ``b_e``.
+  versioned symbol ``b@DPDK_n`` to the internal function ``be``.
 
 * ``BIND_DEFAULT_SYMBOL(b, e, n)``: Creates a symbol version entry instructing
   the linker to bind references to symbol ``b`` to the internal symbol
-  ``b_e``.
+  ``be``.
 
 * ``MAP_STATIC_SYMBOL(f, p)``: Declare the prototype ``f``, and map it to the
diff --git a/lib/librte_compat/rte_compat.h b/lib/librte_compat/rte_compat.h
index 92ff28faf..c5a454f4c 100644
--- a/lib/librte_compat/rte_compat.h
+++ b/lib/librte_compat/rte_compat.h
@@ -39,5 +39,5 @@
  * VERSION_SYMBOL
  * Creates a symbol version table entry binding symbol <b>@DPDK_<n> to the internal
- * function name <b>_<e>
+ * function name <b><e>
  */
 #define VERSION_SYMBOL(b, e, n) __asm__(".symver " RTE_STR(b) RTE_STR(e) ", " RTE_STR(b) "@DPDK_" RTE_STR(n))
@@ -46,5 +46,5 @@
  * BIND_DEFAULT_SYMBOL
  * Creates a symbol version entry instructing the linker to bind references to
- * symbol <b> to the internal symbol <b>_<e>
+ * symbol <b> to the internal symbol <b><e>
  */
 #define BIND_DEFAULT_SYMBOL(b, e, n) __asm__(".symver " RTE_STR(b) RTE_STR(e) ", " RTE_STR(b) "@@DPDK_" RTE_STR(n))
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.336545538 +0000
+++ 0049-doc-fix-description-of-versioning-macros.patch	2019-12-10 14:49:39.081457227 +0000
@@ -1 +1 @@
-From 519e6548f7a679d769182866a71df98f6b6a85d8 Mon Sep 17 00:00:00 2001
+From 65ccd7c1cb03143bf019b6dcfc5ba2184d02a9a6 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 519e6548f7a679d769182866a71df98f6b6a85d8 ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org
@@ -15,2 +16,2 @@
- doc/guides/contributing/versioning.rst                  | 4 ++--
- lib/librte_eal/common/include/rte_function_versioning.h | 4 ++--
+ doc/guides/contributing/versioning.rst | 4 ++--
+ lib/librte_compat/rte_compat.h         | 4 ++--
@@ -20 +21 @@
-index 64984c54e..8a38928c0 100644
+index fe17c7f13..32618fc83 100644
@@ -23 +24 @@
-@@ -216,9 +216,9 @@ The macros exported are:
+@@ -177,9 +177,9 @@ The macros exported are:
@@ -35,5 +36,5 @@
-diff --git a/lib/librte_eal/common/include/rte_function_versioning.h b/lib/librte_eal/common/include/rte_function_versioning.h
-index 55e88ffae..eae619d60 100644
---- a/lib/librte_eal/common/include/rte_function_versioning.h
-+++ b/lib/librte_eal/common/include/rte_function_versioning.h
-@@ -43,5 +43,5 @@
+diff --git a/lib/librte_compat/rte_compat.h b/lib/librte_compat/rte_compat.h
+index 92ff28faf..c5a454f4c 100644
+--- a/lib/librte_compat/rte_compat.h
++++ b/lib/librte_compat/rte_compat.h
+@@ -39,5 +39,5 @@
@@ -46 +47 @@
-@@ -50,5 +50,5 @@
+@@ -46,5 +46,5 @@


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

* [dpdk-stable] patch 'eventdev: fix possible use of uninitialized var' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (47 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'doc: fix description of versioning macros' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'common/cpt: fix possible null dereference' " Kevin Traynor
                   ` (12 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Andrzej Ostruszka; +Cc: Jerin Jacob, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/36050598d20a44fb9436a49ad558d398af71058b

Thanks.

Kevin.

---
From 36050598d20a44fb9436a49ad558d398af71058b Mon Sep 17 00:00:00 2001
From: Andrzej Ostruszka <aostruszka@marvell.com>
Date: Thu, 7 Nov 2019 16:03:10 +0100
Subject: [PATCH] eventdev: fix possible use of uninitialized var
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

[ upstream commit 57e20572ac67a55874a206ef7339443b0950705d ]

Fix the logic for the case of event queue allowing all schedule types.

Compiler warning pointing to this error (with LTO enabled):
error: ‘sched_type’ may be used uninitialized in this function
[-Werror=maybe-uninitialized]
  if ((ret < 0 && ret != -EOVERFLOW) ||

Fixes: 6750b21bd6af ("eventdev: add default software timer adapter")

Signed-off-by: Andrzej Ostruszka <aostruszka@marvell.com>
Reviewed-by: Jerin Jacob <jerinj@marvell.com>
---
 lib/librte_eventdev/rte_event_timer_adapter.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/lib/librte_eventdev/rte_event_timer_adapter.c b/lib/librte_eventdev/rte_event_timer_adapter.c
index 026d639bc..7226fc624 100644
--- a/lib/librte_eventdev/rte_event_timer_adapter.c
+++ b/lib/librte_eventdev/rte_event_timer_adapter.c
@@ -685,9 +685,9 @@ check_destination_event_queue(struct rte_event_timer *evtim,
 				       &sched_type);
 
-	if ((ret < 0 && ret != -EOVERFLOW) ||
-	    evtim->ev.sched_type != sched_type)
-		return -1;
+	if ((ret == 0 && evtim->ev.sched_type == sched_type) ||
+	    ret == -EOVERFLOW)
+		return 0;
 
-	return 0;
+	return -1;
 }
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.395867983 +0000
+++ 0050-eventdev-fix-possible-use-of-uninitialized-var.patch	2019-12-10 14:49:39.083457189 +0000
@@ -1 +1 @@
-From 57e20572ac67a55874a206ef7339443b0950705d Mon Sep 17 00:00:00 2001
+From 36050598d20a44fb9436a49ad558d398af71058b Mon Sep 17 00:00:00 2001
@@ -8,0 +9,2 @@
+[ upstream commit 57e20572ac67a55874a206ef7339443b0950705d ]
+
@@ -17 +18,0 @@
-Cc: stable@dpdk.org
@@ -26 +27 @@
-index 5ce399eca..161e21a68 100644
+index 026d639bc..7226fc624 100644
@@ -29 +30 @@
-@@ -707,9 +707,9 @@ check_destination_event_queue(struct rte_event_timer *evtim,
+@@ -685,9 +685,9 @@ check_destination_event_queue(struct rte_event_timer *evtim,


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

* [dpdk-stable] patch 'common/cpt: fix possible null dereference' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (48 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'eventdev: fix possible use of uninitialized var' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'compress/octeontx: remove commented out code' " Kevin Traynor
                   ` (11 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Kevin Traynor; +Cc: David Marchand, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/3f6ffc1f80b9f030df2cb7518001058b7e65d32d

Thanks.

Kevin.

---
From 3f6ffc1f80b9f030df2cb7518001058b7e65d32d Mon Sep 17 00:00:00 2001
From: Kevin Traynor <ktraynor@redhat.com>
Date: Wed, 6 Nov 2019 19:01:57 +0000
Subject: [PATCH] common/cpt: fix possible null dereference

[ upstream commit 01c65002b7153b4a111c77854715d535c0b6e851 ]

Coverity complains that ctrl_flags is set to NULL at the start
of the function and it may not have been set before there is a
jump to fc_success and it is dereferenced.

Check for NULL before dereference.

312fc_success:
   CID 344983 (#1 of 1): Explicit null dereferenced
   (FORWARD_NULL)7. var_deref_op: Dereferencing null pointer ctrl_flags.
313        *ctrl_flags = rte_cpu_to_be_64(*ctrl_flags);

Coverity issue: 344983
Fixes: 6cc54096520d ("crypto/octeontx: add supported sessions")

Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
---
 drivers/common/cpt/cpt_ucode.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/common/cpt/cpt_ucode.h b/drivers/common/cpt/cpt_ucode.h
index d408d50e3..f0632caf6 100644
--- a/drivers/common/cpt/cpt_ucode.h
+++ b/drivers/common/cpt/cpt_ucode.h
@@ -316,5 +316,6 @@ cpt_fc_ciph_set_key(void *ctx, cipher_type_t type, uint8_t *key,
 
 fc_success:
-	*ctrl_flags = rte_cpu_to_be_64(*ctrl_flags);
+	if (ctrl_flags != NULL)
+		*ctrl_flags = rte_cpu_to_be_64(*ctrl_flags);
 
 success:
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.460827448 +0000
+++ 0051-common-cpt-fix-possible-null-dereference.patch	2019-12-10 14:49:39.086457133 +0000
@@ -1 +1 @@
-From 01c65002b7153b4a111c77854715d535c0b6e851 Mon Sep 17 00:00:00 2001
+From 3f6ffc1f80b9f030df2cb7518001058b7e65d32d Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 01c65002b7153b4a111c77854715d535c0b6e851 ]
+
@@ -19 +20,0 @@
-Cc: stable@dpdk.org
@@ -28 +29 @@
-index 0dac12ee3..d5a0135d7 100644
+index d408d50e3..f0632caf6 100644
@@ -31 +32 @@
-@@ -311,5 +311,6 @@ cpt_fc_ciph_set_key(void *ctx, cipher_type_t type, const uint8_t *key,
+@@ -316,5 +316,6 @@ cpt_fc_ciph_set_key(void *ctx, cipher_type_t type, uint8_t *key,


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

* [dpdk-stable] patch 'compress/octeontx: remove commented out code' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (49 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'common/cpt: fix possible null dereference' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'event/opdl: " Kevin Traynor
                   ` (10 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Kevin Traynor; +Cc: David Marchand, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/73833c76bb80449c3192075ca0a24fa2e74968ab

Thanks.

Kevin.

---
From 73833c76bb80449c3192075ca0a24fa2e74968ab Mon Sep 17 00:00:00 2001
From: Kevin Traynor <ktraynor@redhat.com>
Date: Wed, 6 Nov 2019 19:02:01 +0000
Subject: [PATCH] compress/octeontx: remove commented out code

[ upstream commit 021a812e886b3ea29931cf17279b0a27899fd425 ]

This code is commented out. Remove it.

Fixes: 43e610bb8565 ("compress/octeontx: introduce octeontx zip PMD")

Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
---
 drivers/compress/octeontx/include/zip_regs.h | 8 --------
 1 file changed, 8 deletions(-)

diff --git a/drivers/compress/octeontx/include/zip_regs.h b/drivers/compress/octeontx/include/zip_regs.h
index 04c3d75e9..96e538bb7 100644
--- a/drivers/compress/octeontx/include/zip_regs.h
+++ b/drivers/compress/octeontx/include/zip_regs.h
@@ -37,5 +37,4 @@ typedef union {
 #endif /* Word 0 - End */
 	} s;
-	/* struct zip_vqx_ena_s cn; */
 } zip_vqx_ena_t;
 
@@ -65,5 +64,4 @@ typedef union {
 #endif /* Word 0 - End */
 	} s;
-	/* struct zip_vqx_sbuf_addr_s cn; */
 } zip_vqx_sbuf_addr_t;
 
@@ -85,5 +83,4 @@ typedef union {
 #endif /* Word 0 - End */
 	} s;
-	/* struct zip_quex_doorbell_s cn; */
 } zip_quex_doorbell_t;
 
@@ -105,5 +102,4 @@ union zip_nptr_s {
 #endif /* Word 0 - End */
 	} s;
-	/* struct zip_nptr_s_s cn83xx; */
 };
 
@@ -198,5 +194,4 @@ union zip_inst_s {
 		/** Beginning of file */
 		uint64_t bf                    : 1;
-		// uint64_t reserved_3_4          : 2;
 		/** Comp/decomp operation */
 		uint64_t op                    : 2;
@@ -211,5 +206,4 @@ union zip_inst_s {
 		uint64_t dg                    : 1;
 		uint64_t ds                    : 1;
-		//uint64_t reserved_3_4          : 2;
 		uint64_t op                    : 2;
 		uint64_t bf                    : 1;
@@ -616,6 +610,4 @@ union zip_zres_s {
 #endif /* Word 7 - End */
 	} /** ZIP Result Structure */s;
-
-	/* struct zip_zres_s_s cn83xx; */
 };
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.518837628 +0000
+++ 0052-compress-octeontx-remove-commented-out-code.patch	2019-12-10 14:49:39.087457115 +0000
@@ -1 +1 @@
-From 021a812e886b3ea29931cf17279b0a27899fd425 Mon Sep 17 00:00:00 2001
+From 73833c76bb80449c3192075ca0a24fa2e74968ab Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 021a812e886b3ea29931cf17279b0a27899fd425 ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'event/opdl: remove commented out code' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (50 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'compress/octeontx: remove commented out code' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: " Kevin Traynor
                   ` (9 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Kevin Traynor; +Cc: Liang Ma, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/21973fb3b954bf544aeec5f460ae3eec30de5e43

Thanks.

Kevin.

---
From 21973fb3b954bf544aeec5f460ae3eec30de5e43 Mon Sep 17 00:00:00 2001
From: Kevin Traynor <ktraynor@redhat.com>
Date: Wed, 6 Nov 2019 19:02:02 +0000
Subject: [PATCH] event/opdl: remove commented out code

[ upstream commit 5a4374e14c63a96dd910da36e9f1dd9c1b0fb73e ]

Some variables are commented out. Remove them.

Fixes: d548ef513cd7 ("event/opdl: add unit tests")

Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Liang Ma <liang.j.ma@intel.com>
---
 drivers/event/opdl/opdl_test.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/event/opdl/opdl_test.c b/drivers/event/opdl/opdl_test.c
index 5868ec1be..e7a32fbd3 100644
--- a/drivers/event/opdl/opdl_test.c
+++ b/drivers/event/opdl/opdl_test.c
@@ -696,7 +696,4 @@ static int
 single_link(struct test *t)
 {
-	/* const uint8_t rx_port = 0; */
-	/* const uint8_t w1_port = 1; */
-	/* const uint8_t w3_port = 3; */
 	const uint8_t tx_port = 2;
 	int err;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.580415058 +0000
+++ 0053-event-opdl-remove-commented-out-code.patch	2019-12-10 14:49:39.088457096 +0000
@@ -1 +1 @@
-From 5a4374e14c63a96dd910da36e9f1dd9c1b0fb73e Mon Sep 17 00:00:00 2001
+From 21973fb3b954bf544aeec5f460ae3eec30de5e43 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 5a4374e14c63a96dd910da36e9f1dd9c1b0fb73e ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'net/bnxt: remove commented out code' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (51 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'event/opdl: " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'mk: fix build on arm64' " Kevin Traynor
                   ` (8 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Kevin Traynor; +Cc: Ajit Khaparde, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From df9bc86581c0e1230c3c1ab96cbec9c8870e8d17 Mon Sep 17 00:00:00 2001
From: Kevin Traynor <ktraynor@redhat.com>
Date: Wed, 6 Nov 2019 19:02:03 +0000
Subject: [PATCH] net/bnxt: remove commented out code

[ upstream commit 41c59e1180f6303059af6211dc24f3b1d345fbae ]

This commented out todo and code is old. Remove it.

Fixes: b7435d660a8c ("net/bnxt: add ntuple filtering support")

Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
---
 drivers/net/bnxt/bnxt_ethdev.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index 925ea42e6..30a9aa4f6 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -2098,7 +2098,4 @@ parse_ntuple_filter(struct bnxt *bp,
 	}
 
-	//TODO Priority
-	//nfilter->priority = (uint8_t)filter->priority;
-
 	bfilter->enables = en;
 	return 0;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.641434848 +0000
+++ 0054-net-bnxt-remove-commented-out-code.patch	2019-12-10 14:49:39.092457022 +0000
@@ -1 +1 @@
-From 41c59e1180f6303059af6211dc24f3b1d345fbae Mon Sep 17 00:00:00 2001
+From df9bc86581c0e1230c3c1ab96cbec9c8870e8d17 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 41c59e1180f6303059af6211dc24f3b1d345fbae ]
+
@@ -9 +10,0 @@
-Cc: stable@dpdk.org
@@ -18 +19 @@
-index 7d9459f0a..58a4f98c9 100644
+index 925ea42e6..30a9aa4f6 100644
@@ -21 +22 @@
-@@ -2617,7 +2617,4 @@ parse_ntuple_filter(struct bnxt *bp,
+@@ -2098,7 +2098,4 @@ parse_ntuple_filter(struct bnxt *bp,


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

* [dpdk-stable] patch 'mk: fix build on arm64' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (52 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'crypto/dpaa2_sec: fix length retrieved from hardware' " Kevin Traynor
                   ` (7 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Ali Alnubani; +Cc: Thomas Monjalon, Jerin Jacob, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From d94852eaa4983e31d8adc6e96327e17f27b6d06d Mon Sep 17 00:00:00 2001
From: Ali Alnubani <alialnu@mellanox.com>
Date: Mon, 4 Nov 2019 15:30:08 +0200
Subject: [PATCH] mk: fix build on arm64

[ upstream commit 27d6c3248d305a0515667475f404c62ecc63be06 ]

OcteonTx was disabled for causing an internal compiler error on old gcc
versions.
See commit 4f760550a093 ("mk: disable OcteonTx for buggy compilers").

The condition that was added later to apply disabling OcteonTx
only on arm64 caused the condition to never be obeyed because it
compares ["arm64"] to [arm64].

This fixes the condition by using RTE_ARCH instead of CONFIG_RTE_ARCH,
because the former has the quotes removed, while the later doesn't.

Fixes: f3af3e44a444 ("mk: disable OcteonTx for buggy compilers only on arm64")

Signed-off-by: Ali Alnubani <alialnu@mellanox.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Jerin Jacob <jerinj@marvell.com>
---
 mk/toolchain/gcc/rte.toolchain-compat.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/toolchain/gcc/rte.toolchain-compat.mk b/mk/toolchain/gcc/rte.toolchain-compat.mk
index ea40a11c0..00d6fd642 100644
--- a/mk/toolchain/gcc/rte.toolchain-compat.mk
+++ b/mk/toolchain/gcc/rte.toolchain-compat.mk
@@ -100,5 +100,5 @@ else
 
 	# Disable octeontx event PMD for gcc < 4.8.6 & ARCH=arm64
-	ifeq ($(CONFIG_RTE_ARCH), arm64)
+	ifeq ($(RTE_ARCH), arm64)
 	ifeq ($(shell test $(GCC_VERSION)$(GCC_PATCHLEVEL) -lt 486 && echo 1), 1)
 		CONFIG_RTE_LIBRTE_PMD_OCTEONTX_SSOVF=d
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.711414896 +0000
+++ 0055-mk-fix-build-on-arm64.patch	2019-12-10 14:49:39.093457003 +0000
@@ -1 +1 @@
-From 27d6c3248d305a0515667475f404c62ecc63be06 Mon Sep 17 00:00:00 2001
+From d94852eaa4983e31d8adc6e96327e17f27b6d06d Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 27d6c3248d305a0515667475f404c62ecc63be06 ]
+
@@ -18 +19,0 @@
-Cc: stable@dpdk.org
@@ -28 +29 @@
-index 69a53e5d0..35376da58 100644
+index ea40a11c0..00d6fd642 100644
@@ -31 +32 @@
-@@ -104,5 +104,5 @@ else
+@@ -100,5 +100,5 @@ else


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

* [dpdk-stable] patch 'crypto/dpaa2_sec: fix length retrieved from hardware' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (53 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'mk: fix build on arm64' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/ipsec-secgw: fix GCM IV length' " Kevin Traynor
                   ` (6 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Akhil Goyal; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From d3edfc526b06e1da60c7d4d73a7fbf2c63f05eaa Mon Sep 17 00:00:00 2001
From: Akhil Goyal <akhil.goyal@nxp.com>
Date: Wed, 6 Nov 2019 02:37:12 +0530
Subject: [PATCH] crypto/dpaa2_sec: fix length retrieved from hardware

[ upstream commit 4bc65cf1190f3ba6b613dd4c76224c8d710c1d04 ]

FD retrieved from SEC after crypto processing provides
an updated length of the buffer which need to be updated
in mbuf. The difference in length can be negative hence
changing diff to int32_t from uint32_t.

Fixes: 0a23d4b6f4c2 ("crypto/dpaa2_sec: support protocol offload IPsec")

Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
---
 drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
index ae06438d4..d88856832 100644
--- a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
+++ b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
@@ -1302,5 +1302,5 @@ sec_simple_fd_to_mbuf(const struct qbman_fd *fd, __rte_unused uint8_t id)
 	struct rte_crypto_op *op;
 	uint16_t len = DPAA2_GET_FD_LEN(fd);
-	uint16_t diff = 0;
+	int16_t diff = 0;
 	dpaa2_sec_session *sess_priv;
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.771953204 +0000
+++ 0056-crypto-dpaa2_sec-fix-length-retrieved-from-hardware.patch	2019-12-10 14:49:39.096456947 +0000
@@ -1 +1 @@
-From 4bc65cf1190f3ba6b613dd4c76224c8d710c1d04 Mon Sep 17 00:00:00 2001
+From d3edfc526b06e1da60c7d4d73a7fbf2c63f05eaa Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 4bc65cf1190f3ba6b613dd4c76224c8d710c1d04 ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -20 +21 @@
-index add3b9ea6..b04890a48 100644
+index ae06438d4..d88856832 100644
@@ -23 +24 @@
-@@ -1512,5 +1512,5 @@ sec_simple_fd_to_mbuf(const struct qbman_fd *fd)
+@@ -1302,5 +1302,5 @@ sec_simple_fd_to_mbuf(const struct qbman_fd *fd, __rte_unused uint8_t id)
@@ -28 +29 @@
- 	dpaa2_sec_session *sess_priv __rte_unused;
+ 	dpaa2_sec_session *sess_priv;


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

* [dpdk-stable] patch 'examples/ipsec-secgw: fix GCM IV length' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (54 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'crypto/dpaa2_sec: fix length retrieved from hardware' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/ipsec-secgw: fix SHA256-HMAC digest " Kevin Traynor
                   ` (5 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Marcin Smoczynski; +Cc: Akhil Goyal, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From ad214b1dc868df16101fc60a669eb1608ff2212a Mon Sep 17 00:00:00 2001
From: Marcin Smoczynski <marcinx.smoczynski@intel.com>
Date: Thu, 31 Oct 2019 15:04:45 +0100
Subject: [PATCH] examples/ipsec-secgw: fix GCM IV length

[ upstream commit ce00b504f19896604d60d121008b8a2df48ef114 ]

The example IPsec application does not work properly when using
AES-GCM with crypto_openssl.

ESP with AES-GCM uses standard 96bit long algorithm IV ([1]) which
later concatenated with be32(1) forms a J0 block. GCM specification
([2], chapter 7.1) states that when length of IV is different than
96b, in order to format a J0 block, GHASH function must be used.

According to specification ([2], chapter 5.1.1) GCM implementations
should support standard 96bit IVs, other lengths are optional. Every
DPDK cryptodev supports 96bit IV and few of them supports 128bit
IV as well (openssl, mrvl, ccp). When passing iv::length=16 to a
cryptodev which does support standard IVs only (e.g. qat) it
implicitly uses starting 96 bits. On the other hand, openssl follows
specification and uses GHASH to compute J0 for that case which results
in different than expected J0 values used for encryption/decryption.

Fix an inability to use AES-GCM with crypto_openssl by changing IV
length to the standard value of 12.

[1] RFC4106, section "4. Nonce format" and "3.1. Initialization Vector"
    https://tools.ietf.org/html/rfc4106
[2] NIST SP800-38D
    https://csrc.nist.gov/publications/detail/sp/800-38d/final

Fixes: 0fbd75a99f ("cryptodev: move IV parameters to session")

Signed-off-by: Marcin Smoczynski <marcinx.smoczynski@intel.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
---
 examples/ipsec-secgw/sa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/examples/ipsec-secgw/sa.c b/examples/ipsec-secgw/sa.c
index 45b810366..dd01f1fbc 100644
--- a/examples/ipsec-secgw/sa.c
+++ b/examples/ipsec-secgw/sa.c
@@ -912,5 +912,5 @@ sa_add_rules(struct sa_ctx *sa_ctx, const struct ipsec_sa entries[],
 
 		if (sa->aead_algo == RTE_CRYPTO_AEAD_AES_GCM) {
-			iv_length = 16;
+			iv_length = 12;
 
 			sa_ctx->xf[idx].a.type = RTE_CRYPTO_SYM_XFORM_AEAD;
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.835102506 +0000
+++ 0057-examples-ipsec-secgw-fix-GCM-IV-length.patch	2019-12-10 14:49:39.098456910 +0000
@@ -1 +1 @@
-From ce00b504f19896604d60d121008b8a2df48ef114 Mon Sep 17 00:00:00 2001
+From ad214b1dc868df16101fc60a669eb1608ff2212a Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit ce00b504f19896604d60d121008b8a2df48ef114 ]
+
@@ -32 +33,0 @@
-Cc: stable@dpdk.org
@@ -41 +42 @@
-index 4cb90857c..a8dee342e 100644
+index 45b810366..dd01f1fbc 100644
@@ -44 +45,2 @@
-@@ -986,5 +986,5 @@ sa_add_rules(struct sa_ctx *sa_ctx, const struct ipsec_sa entries[],
+@@ -912,5 +912,5 @@ sa_add_rules(struct sa_ctx *sa_ctx, const struct ipsec_sa entries[],
+ 
@@ -46 +47,0 @@
- 			struct rte_ipsec_session *ips;


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

* [dpdk-stable] patch 'examples/ipsec-secgw: fix SHA256-HMAC digest length' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (55 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/ipsec-secgw: fix GCM IV length' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'crypto/openssl: use local copy for session contexts' " Kevin Traynor
                   ` (4 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Vakul Garg; +Cc: Akhil Goyal, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/6be4264d4f62e5a05792fde571576c797c979229

Thanks.

Kevin.

---
From 6be4264d4f62e5a05792fde571576c797c979229 Mon Sep 17 00:00:00 2001
From: Vakul Garg <vakul.garg@nxp.com>
Date: Wed, 6 Nov 2019 15:23:22 +0530
Subject: [PATCH] examples/ipsec-secgw: fix SHA256-HMAC digest length

[ upstream commit 2fcf3f70d19af191eef79fbc9f2d978b2ffb1588 ]

As per RFC4868, SHA-256 should use 128 bits of ICV.
Fixes: b5350285ce6e ("examples/ipsec-secgw: support SHA256 HMAC")

Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
---
 examples/ipsec-secgw/sa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/examples/ipsec-secgw/sa.c b/examples/ipsec-secgw/sa.c
index dd01f1fbc..30d1fb22d 100644
--- a/examples/ipsec-secgw/sa.c
+++ b/examples/ipsec-secgw/sa.c
@@ -113,5 +113,5 @@ const struct supported_auth_algo auth_algos[] = {
 		.keyword = "sha256-hmac",
 		.algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
-		.digest_len = 12,
+		.digest_len = 16,
 		.key_len = 32
 	}
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.898521241 +0000
+++ 0058-examples-ipsec-secgw-fix-SHA256-HMAC-digest-length.patch	2019-12-10 14:49:39.099456891 +0000
@@ -1 +1 @@
-From 2fcf3f70d19af191eef79fbc9f2d978b2ffb1588 Mon Sep 17 00:00:00 2001
+From 6be4264d4f62e5a05792fde571576c797c979229 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 2fcf3f70d19af191eef79fbc9f2d978b2ffb1588 ]
+
@@ -8 +9,0 @@
-Cc: stable@dpdk.org
@@ -17 +18 @@
-index a8dee342e..f56e16bfc 100644
+index dd01f1fbc..30d1fb22d 100644
@@ -20 +21 @@
-@@ -116,5 +116,5 @@ const struct supported_auth_algo auth_algos[] = {
+@@ -113,5 +113,5 @@ const struct supported_auth_algo auth_algos[] = {


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

* [dpdk-stable] patch 'crypto/openssl: use local copy for session contexts' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (56 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'examples/ipsec-secgw: fix SHA256-HMAC digest " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/fm10k: fix mbuf free in vector Rx' " Kevin Traynor
                   ` (3 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Thierry Herbelot; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/531676e03411b8488c6cc6b94603bd218d67dff4

Thanks.

Kevin.

---
From 531676e03411b8488c6cc6b94603bd218d67dff4 Mon Sep 17 00:00:00 2001
From: Thierry Herbelot <thierry.herbelot@6wind.com>
Date: Wed, 11 Sep 2019 18:06:01 +0200
Subject: [PATCH] crypto/openssl: use local copy for session contexts

[ upstream commit 67ab783b5d70aed77d9ee3f3ae4688a70c42a49a ]

Session contexts are used for temporary storage when processing a
packet.
If packets for the same session are to be processed simultaneously on
multiple cores, separate contexts must be used.

Note: with openssl 1.1.1 EVP_CIPHER_CTX can no longer be defined as a
variable on the stack: it must be allocated. This in turn reduces the
performance.

Fixes: d61f70b4c918 ("crypto/libcrypto: add driver for OpenSSL library")

Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com>
---
 drivers/crypto/openssl/rte_openssl_pmd.c | 34 +++++++++++++++++-------
 1 file changed, 25 insertions(+), 9 deletions(-)

diff --git a/drivers/crypto/openssl/rte_openssl_pmd.c b/drivers/crypto/openssl/rte_openssl_pmd.c
index 406e6211f..90a91bd83 100644
--- a/drivers/crypto/openssl/rte_openssl_pmd.c
+++ b/drivers/crypto/openssl/rte_openssl_pmd.c
@@ -1290,4 +1290,5 @@ process_openssl_combined_op
 	uint32_t offset;
 	uint8_t taglen;
+	EVP_CIPHER_CTX *ctx_copy;
 
 	/*
@@ -1326,4 +1327,6 @@ process_openssl_combined_op
 
 	taglen = sess->auth.digest_length;
+	ctx_copy = EVP_CIPHER_CTX_new();
+	EVP_CIPHER_CTX_copy(ctx_copy, sess->cipher.ctx);
 
 	if (sess->cipher.direction == RTE_CRYPTO_CIPHER_OP_ENCRYPT) {
@@ -1333,10 +1336,10 @@ process_openssl_combined_op
 					mbuf_src, offset, srclen,
 					aad, aadlen, iv,
-					dst, tag, sess->cipher.ctx);
+					dst, tag, ctx_copy);
 		else
 			status = process_openssl_auth_encryption_ccm(
 					mbuf_src, offset, srclen,
 					aad, aadlen, iv,
-					dst, tag, taglen, sess->cipher.ctx);
+					dst, tag, taglen, ctx_copy);
 
 	} else {
@@ -1346,12 +1349,13 @@ process_openssl_combined_op
 					mbuf_src, offset, srclen,
 					aad, aadlen, iv,
-					dst, tag, sess->cipher.ctx);
+					dst, tag, ctx_copy);
 		else
 			status = process_openssl_auth_decryption_ccm(
 					mbuf_src, offset, srclen,
 					aad, aadlen, iv,
-					dst, tag, taglen, sess->cipher.ctx);
+					dst, tag, taglen, ctx_copy);
 	}
 
+	EVP_CIPHER_CTX_free(ctx_copy);
 	if (status != 0) {
 		if (status == (-EFAULT) &&
@@ -1372,4 +1376,5 @@ process_openssl_cipher_op
 	uint8_t *dst, *iv;
 	int srclen, status;
+	EVP_CIPHER_CTX *ctx_copy;
 
 	/*
@@ -1388,4 +1393,6 @@ process_openssl_cipher_op
 	iv = rte_crypto_op_ctod_offset(op, uint8_t *,
 			sess->iv.offset);
+	ctx_copy = EVP_CIPHER_CTX_new();
+	EVP_CIPHER_CTX_copy(ctx_copy, sess->cipher.ctx);
 
 	if (sess->cipher.mode == OPENSSL_CIPHER_LIB)
@@ -1393,15 +1400,16 @@ process_openssl_cipher_op
 			status = process_openssl_cipher_encrypt(mbuf_src, dst,
 					op->sym->cipher.data.offset, iv,
-					srclen, sess->cipher.ctx);
+					srclen, ctx_copy);
 		else
 			status = process_openssl_cipher_decrypt(mbuf_src, dst,
 					op->sym->cipher.data.offset, iv,
-					srclen, sess->cipher.ctx);
+					srclen, ctx_copy);
 	else
 		status = process_openssl_cipher_des3ctr(mbuf_src, dst,
 				op->sym->cipher.data.offset, iv,
 				sess->cipher.key.data, srclen,
-				sess->cipher.ctx);
+				ctx_copy);
 
+	EVP_CIPHER_CTX_free(ctx_copy);
 	if (status != 0)
 		op->status = RTE_CRYPTO_OP_STATUS_ERROR;
@@ -1507,4 +1515,6 @@ process_openssl_auth_op(struct openssl_qp *qp, struct rte_crypto_op *op,
 	uint8_t *dst;
 	int srclen, status;
+	EVP_MD_CTX *ctx_a;
+	HMAC_CTX *ctx_h;
 
 	srclen = op->sym->auth.data.length;
@@ -1514,12 +1524,18 @@ process_openssl_auth_op(struct openssl_qp *qp, struct rte_crypto_op *op,
 	switch (sess->auth.mode) {
 	case OPENSSL_AUTH_AS_AUTH:
+		ctx_a = EVP_MD_CTX_create();
+		EVP_MD_CTX_copy_ex(ctx_a, sess->auth.auth.ctx);
 		status = process_openssl_auth(mbuf_src, dst,
 				op->sym->auth.data.offset, NULL, NULL, srclen,
-				sess->auth.auth.ctx, sess->auth.auth.evp_algo);
+				ctx_a, sess->auth.auth.evp_algo);
+		EVP_MD_CTX_destroy(ctx_a);
 		break;
 	case OPENSSL_AUTH_AS_HMAC:
+		ctx_h = HMAC_CTX_new();
+		HMAC_CTX_copy(ctx_h, sess->auth.hmac.ctx);
 		status = process_openssl_auth_hmac(mbuf_src, dst,
 				op->sym->auth.data.offset, srclen,
-				sess->auth.hmac.ctx);
+				ctx_h);
+		HMAC_CTX_free(ctx_h);
 		break;
 	default:
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:42.960104989 +0000
+++ 0059-crypto-openssl-use-local-copy-for-session-contexts.patch	2019-12-10 14:49:39.101456854 +0000
@@ -1 +1 @@
-From 67ab783b5d70aed77d9ee3f3ae4688a70c42a49a Mon Sep 17 00:00:00 2001
+From 531676e03411b8488c6cc6b94603bd218d67dff4 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 67ab783b5d70aed77d9ee3f3ae4688a70c42a49a ]
+
@@ -16 +17,0 @@
-Cc: stable@dpdk.org
@@ -24 +25 @@
-index 6a75223ff..d68713e7e 100644
+index 406e6211f..90a91bd83 100644
@@ -27 +28 @@
-@@ -1291,4 +1291,5 @@ process_openssl_combined_op
+@@ -1290,4 +1290,5 @@ process_openssl_combined_op
@@ -33 +34 @@
-@@ -1327,4 +1328,6 @@ process_openssl_combined_op
+@@ -1326,4 +1327,6 @@ process_openssl_combined_op
@@ -40 +41 @@
-@@ -1334,10 +1337,10 @@ process_openssl_combined_op
+@@ -1333,10 +1336,10 @@ process_openssl_combined_op
@@ -53 +54 @@
-@@ -1347,12 +1350,13 @@ process_openssl_combined_op
+@@ -1346,12 +1349,13 @@ process_openssl_combined_op
@@ -69 +70 @@
-@@ -1373,4 +1377,5 @@ process_openssl_cipher_op
+@@ -1372,4 +1376,5 @@ process_openssl_cipher_op
@@ -75 +76 @@
-@@ -1389,4 +1394,6 @@ process_openssl_cipher_op
+@@ -1388,4 +1393,6 @@ process_openssl_cipher_op
@@ -82 +83 @@
-@@ -1394,15 +1401,16 @@ process_openssl_cipher_op
+@@ -1393,15 +1400,16 @@ process_openssl_cipher_op
@@ -102 +103 @@
-@@ -1508,4 +1516,6 @@ process_openssl_auth_op(struct openssl_qp *qp, struct rte_crypto_op *op,
+@@ -1507,4 +1515,6 @@ process_openssl_auth_op(struct openssl_qp *qp, struct rte_crypto_op *op,
@@ -109 +110 @@
-@@ -1515,12 +1525,18 @@ process_openssl_auth_op(struct openssl_qp *qp, struct rte_crypto_op *op,
+@@ -1514,12 +1524,18 @@ process_openssl_auth_op(struct openssl_qp *qp, struct rte_crypto_op *op,


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

* [dpdk-stable] patch 'net/fm10k: fix mbuf free in vector Rx' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (57 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'crypto/openssl: use local copy for session contexts' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/igb: fix PHY status if PHY reset is not blocked' " Kevin Traynor
                   ` (2 subsequent siblings)
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Xiao Wang; +Cc: Anna Lukin, Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/6f0f144c7c71253546580db6fceb3f0bd06de70a

Thanks.

Kevin.

---
From 6f0f144c7c71253546580db6fceb3f0bd06de70a Mon Sep 17 00:00:00 2001
From: Xiao Wang <xiao.w.wang@intel.com>
Date: Fri, 25 Oct 2019 20:33:22 -0400
Subject: [PATCH] net/fm10k: fix mbuf free in vector Rx

[ upstream commit 84fff3425b896a465a29b92a81aab563c07847cd ]

There's a corner case that all the Rx queue mbufs are allocated but none
of them is used, this patch fixes mbuf free for this case.

Fixes: b6719f8a04bb ("fm10k: release mbuf for vector Rx")

Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Signed-off-by: Anna Lukin <annal@silicom.co.il>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/fm10k/fm10k_rxtx_vec.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/net/fm10k/fm10k_rxtx_vec.c b/drivers/net/fm10k/fm10k_rxtx_vec.c
index 45542bef3..d76dfd16f 100644
--- a/drivers/net/fm10k/fm10k_rxtx_vec.c
+++ b/drivers/net/fm10k/fm10k_rxtx_vec.c
@@ -360,6 +360,13 @@ fm10k_rx_queue_release_mbufs_vec(struct fm10k_rx_queue *rxq)
 
 	/* free all mbufs that are valid in the ring */
-	for (i = rxq->next_dd; i != rxq->rxrearm_start; i = (i + 1) & mask)
-		rte_pktmbuf_free_seg(rxq->sw_ring[i]);
+	if (rxq->rxrearm_nb == 0) {
+		for (i = 0; i < rxq->nb_desc; i++)
+			if (rxq->sw_ring[i] != NULL)
+				rte_pktmbuf_free_seg(rxq->sw_ring[i]);
+	} else {
+		for (i = rxq->next_dd; i != rxq->rxrearm_start;
+				i = (i + 1) & mask)
+			rte_pktmbuf_free_seg(rxq->sw_ring[i]);
+	}
 	rxq->rxrearm_nb = rxq->nb_desc;
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:43.023441154 +0000
+++ 0060-net-fm10k-fix-mbuf-free-in-vector-Rx.patch	2019-12-10 14:49:39.102456835 +0000
@@ -1 +1 @@
-From 84fff3425b896a465a29b92a81aab563c07847cd Mon Sep 17 00:00:00 2001
+From 6f0f144c7c71253546580db6fceb3f0bd06de70a Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 84fff3425b896a465a29b92a81aab563c07847cd ]
+
@@ -10 +11,0 @@
-Cc: stable@dpdk.org


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

* [dpdk-stable] patch 'net/igb: fix PHY status if PHY reset is not blocked' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (58 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/fm10k: fix mbuf free in vector Rx' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bonding: fix port ID check' " Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'port: fix pcap support with meson' " Kevin Traynor
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Shweta Choudaha; +Cc: Xiaolong Ye, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From c9a19b57badadef772195cd0afc51630998ae7dc Mon Sep 17 00:00:00 2001
From: Shweta Choudaha <shweta.choudaha@att.com>
Date: Thu, 16 May 2019 23:03:31 +0100
Subject: [PATCH] net/igb: fix PHY status if PHY reset is not blocked

[ upstream commit 260dd6952600b5b44d0a1ce70a582116e6bd74fa ]

When PHY reset is blocked as is the case when BMC is connected via NC-SI
do not set GO_LINKD bit in PHY power management register in dev_stop as
this will disconnect the PHY. Also, in dev_close clear the GO_LINKD
bit only if PHY reset is not blocked

Fixes: 3af34dec0b41 ("igb: force phy power up/down")

Signed-off-by: Shweta Choudaha <shweta.choudaha@att.com>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
---
 drivers/net/e1000/igb_ethdev.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
index 96ccf9763..23b48d161 100644
--- a/drivers/net/e1000/igb_ethdev.c
+++ b/drivers/net/e1000/igb_ethdev.c
@@ -1515,6 +1515,7 @@ eth_igb_stop(struct rte_eth_dev *dev)
 	E1000_WRITE_REG(hw, E1000_WUC, 0);
 
-	/* Set bit for Go Link disconnect */
-	if (hw->mac.type >= e1000_82580) {
+	/* Set bit for Go Link disconnect if PHY reset is not blocked */
+	if (hw->mac.type >= e1000_82580 &&
+	    (e1000_check_reset_block(hw) != E1000_BLK_PHY_RESET)) {
 		uint32_t phpm_reg;
 
@@ -1590,6 +1591,7 @@ eth_igb_close(struct rte_eth_dev *dev)
 	igb_hw_control_release(hw);
 
-	/* Clear bit for Go Link disconnect */
-	if (hw->mac.type >= e1000_82580) {
+	/* Clear bit for Go Link disconnect if PHY reset is not blocked */
+	if (hw->mac.type >= e1000_82580 &&
+	    (e1000_check_reset_block(hw) != E1000_BLK_PHY_RESET)) {
 		uint32_t phpm_reg;
 
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:43.086003085 +0000
+++ 0061-net-igb-fix-PHY-status-if-PHY-reset-is-not-blocked.patch	2019-12-10 14:49:39.108456723 +0000
@@ -1 +1 @@
-From 260dd6952600b5b44d0a1ce70a582116e6bd74fa Mon Sep 17 00:00:00 2001
+From c9a19b57badadef772195cd0afc51630998ae7dc Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 260dd6952600b5b44d0a1ce70a582116e6bd74fa ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index ce7c9e664..53e83d5ec 100644
+index 96ccf9763..23b48d161 100644
@@ -24 +25 @@
-@@ -1469,6 +1469,7 @@ eth_igb_stop(struct rte_eth_dev *dev)
+@@ -1515,6 +1515,7 @@ eth_igb_stop(struct rte_eth_dev *dev)
@@ -34 +35 @@
-@@ -1545,6 +1546,7 @@ eth_igb_close(struct rte_eth_dev *dev)
+@@ -1590,6 +1591,7 @@ eth_igb_close(struct rte_eth_dev *dev)


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

* [dpdk-stable] patch 'net/bonding: fix port ID check' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (59 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/igb: fix PHY status if PHY reset is not blocked' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  2019-12-10 14:59 ` [dpdk-stable] patch 'port: fix pcap support with meson' " Kevin Traynor
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Junyu Jiang; +Cc: Chas Williams, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

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

Thanks.

Kevin.

---
From 19e6ac59dd55bf040d7e6523d72a4ff826dc2b38 Mon Sep 17 00:00:00 2001
From: Junyu Jiang <junyux.jiang@intel.com>
Date: Tue, 29 Oct 2019 02:23:41 +0000
Subject: [PATCH] net/bonding: fix port ID check

[ upstream commit 588ae95e79834495f78192fc6bb3ae14c152439f ]

Port validation should be prior to getting device data
to avoid segment fault. This patch fixed the segment fault
caused by invalid port using.

Fixes: 6d72657ce379 ("net/bonding: add other aggregator modes")
Fixes: 112891cd27e5 ("net/bonding: add dedicated HW queues for LACP control")

Signed-off-by: Junyu Jiang <junyux.jiang@intel.com>
Acked-by: Chas Williams <chas3@att.com>
---
 drivers/net/bonding/rte_eth_bond_8023ad.c | 36 +++++++++++++++--------
 1 file changed, 24 insertions(+), 12 deletions(-)

diff --git a/drivers/net/bonding/rte_eth_bond_8023ad.c b/drivers/net/bonding/rte_eth_bond_8023ad.c
index 5004898e7..def27c9f1 100644
--- a/drivers/net/bonding/rte_eth_bond_8023ad.c
+++ b/drivers/net/bonding/rte_eth_bond_8023ad.c
@@ -1301,9 +1301,10 @@ rte_eth_bond_8023ad_agg_selection_set(uint16_t port_id,
 	struct mode8023ad_private *mode4;
 
-	bond_dev = &rte_eth_devices[port_id];
-	internals = bond_dev->data->dev_private;
-
 	if (valid_bonded_port_id(port_id) != 0)
 		return -EINVAL;
+
+	bond_dev = &rte_eth_devices[port_id];
+	internals = bond_dev->data->dev_private;
+
 	if (internals->mode != 4)
 		return -EINVAL;
@@ -1322,9 +1323,10 @@ int rte_eth_bond_8023ad_agg_selection_get(uint16_t port_id)
 	struct mode8023ad_private *mode4;
 
-	bond_dev = &rte_eth_devices[port_id];
-	internals = bond_dev->data->dev_private;
-
 	if (valid_bonded_port_id(port_id) != 0)
 		return -EINVAL;
+
+	bond_dev = &rte_eth_devices[port_id];
+	internals = bond_dev->data->dev_private;
+
 	if (internals->mode != 4)
 		return -EINVAL;
@@ -1579,7 +1581,12 @@ rte_eth_bond_8023ad_dedicated_queues_enable(uint16_t port)
 {
 	int retval = 0;
-	struct rte_eth_dev *dev = &rte_eth_devices[port];
-	struct bond_dev_private *internals = (struct bond_dev_private *)
-		dev->data->dev_private;
+	struct rte_eth_dev *dev;
+	struct bond_dev_private *internals;
+
+	if (valid_bonded_port_id(port) != 0)
+		return -EINVAL;
+
+	dev = &rte_eth_devices[port];
+	internals = dev->data->dev_private;
 
 	if (check_for_bonded_ethdev(dev) != 0)
@@ -1603,7 +1610,12 @@ rte_eth_bond_8023ad_dedicated_queues_disable(uint16_t port)
 {
 	int retval = 0;
-	struct rte_eth_dev *dev = &rte_eth_devices[port];
-	struct bond_dev_private *internals = (struct bond_dev_private *)
-		dev->data->dev_private;
+	struct rte_eth_dev *dev;
+	struct bond_dev_private *internals;
+
+	if (valid_bonded_port_id(port) != 0)
+		return -EINVAL;
+
+	dev = &rte_eth_devices[port];
+	internals = dev->data->dev_private;
 
 	if (check_for_bonded_ethdev(dev) != 0)
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:43.151229791 +0000
+++ 0062-net-bonding-fix-port-ID-check.patch	2019-12-10 14:49:39.110456686 +0000
@@ -1 +1 @@
-From 588ae95e79834495f78192fc6bb3ae14c152439f Mon Sep 17 00:00:00 2001
+From 19e6ac59dd55bf040d7e6523d72a4ff826dc2b38 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 588ae95e79834495f78192fc6bb3ae14c152439f ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -21 +22 @@
-index badcd109a..05b3004c4 100644
+index 5004898e7..def27c9f1 100644
@@ -24 +25 @@
-@@ -1388,9 +1388,10 @@ rte_eth_bond_8023ad_agg_selection_set(uint16_t port_id,
+@@ -1301,9 +1301,10 @@ rte_eth_bond_8023ad_agg_selection_set(uint16_t port_id,
@@ -38 +39 @@
-@@ -1409,9 +1410,10 @@ int rte_eth_bond_8023ad_agg_selection_get(uint16_t port_id)
+@@ -1322,9 +1323,10 @@ int rte_eth_bond_8023ad_agg_selection_get(uint16_t port_id)
@@ -52 +53 @@
-@@ -1666,7 +1668,12 @@ rte_eth_bond_8023ad_dedicated_queues_enable(uint16_t port)
+@@ -1579,7 +1581,12 @@ rte_eth_bond_8023ad_dedicated_queues_enable(uint16_t port)
@@ -68 +69 @@
-@@ -1690,7 +1697,12 @@ rte_eth_bond_8023ad_dedicated_queues_disable(uint16_t port)
+@@ -1603,7 +1610,12 @@ rte_eth_bond_8023ad_dedicated_queues_disable(uint16_t port)


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

* [dpdk-stable] patch 'port: fix pcap support with meson' has been queued to LTS release 18.11.6
  2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
                   ` (60 preceding siblings ...)
  2019-12-10 14:59 ` [dpdk-stable] patch 'net/bonding: fix port ID check' " Kevin Traynor
@ 2019-12-10 14:59 ` Kevin Traynor
  61 siblings, 0 replies; 63+ messages in thread
From: Kevin Traynor @ 2019-12-10 14:59 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: Cristian Bidea, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/16/19. 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/5e8a1c2a3bfe0f7ec1e1fe01b00ecf7112f29e3b

Thanks.

Kevin.

---
From 5e8a1c2a3bfe0f7ec1e1fe01b00ecf7112f29e3b Mon Sep 17 00:00:00 2001
From: Bruce Richardson <bruce.richardson@intel.com>
Date: Tue, 24 Sep 2019 13:04:14 +0100
Subject: [PATCH] port: fix pcap support with meson

[ upstream commit 268fa581b1ffbd3077279c18f5a86992b747a9c0]

The meson build was missing the define to enable pcap port support if
libpcap (development) package was found on the build platform. Rather than
duplicating the checks for libpcap found in the pcap net PMD build file, we
can move the checks to the top-level config directory and reference the
RTE_PCAP_PORT setting elsewhere in the build.

Bugzilla ID: 351
Fixes: 5b9656b157d3 ("lib: build with meson")

Reported-by: Cristian Bidea <cristian.bidea@keysight.com>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Cristian Bidea <cristian.bidea@keysight.com>
---
 config/meson.build           | 13 +++++++++++++
 drivers/net/pcap/meson.build |  6 ++----
 lib/librte_port/meson.build  |  4 ++++
 3 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/config/meson.build b/config/meson.build
index d76776137..616af9746 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -90,4 +90,17 @@ if host_machine.system() == 'linux' and cc.find_library('bsd',
 endif
 
+# check for pcap
+pcap_dep = dependency('pcap', required: false)
+if pcap_dep.found()
+	# pcap got a pkg-config file only in 1.9.0 and before that meson uses
+	# an internal pcap-config finder, which is not compatible with
+	# cross-compilation, so try to fallback to find_library
+	pcap_dep = cc.find_library('pcap', required: false)
+endif
+if pcap_dep.found() and cc.has_header('pcap.h', dependencies: pcap_dep)
+	dpdk_conf.set('RTE_PORT_PCAP', 1)
+	dpdk_extra_ldflags += '-lpcap'
+endif
+
 # add -include rte_config to cflags
 add_project_arguments('-include', 'rte_config.h', language: 'c')
diff --git a/drivers/net/pcap/meson.build b/drivers/net/pcap/meson.build
index 0c4e0201a..2e84a5efc 100644
--- a/drivers/net/pcap/meson.build
+++ b/drivers/net/pcap/meson.build
@@ -2,9 +2,7 @@
 # Copyright(c) 2017 Intel Corporation
 
-pcap_dep = cc.find_library('pcap', required: false)
-if pcap_dep.found() and cc.has_header('pcap.h', dependencies: pcap_dep)
-	build = true
-else
+if not dpdk_conf.has('RTE_PORT_PCAP')
 	build = false
+	reason = 'missing dependency, "libpcap"'
 endif
 sources = files('rte_eth_pcap.c')
diff --git a/lib/librte_port/meson.build b/lib/librte_port/meson.build
index 0d11456f0..1b48127c1 100644
--- a/lib/librte_port/meson.build
+++ b/lib/librte_port/meson.build
@@ -24,4 +24,8 @@ headers = files(
 deps += ['ethdev', 'sched', 'ip_frag', 'cryptodev']
 
+if dpdk_conf.has('RTE_PORT_PCAP')
+	ext_deps += pcap_dep # dependency provided in config/meson.build
+endif
+
 if dpdk_conf.has('RTE_LIBRTE_KNI')
 	sources += files('rte_port_kni.c')
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-10 14:49:43.207549387 +0000
+++ 0063-port-fix-pcap-support-with-meson.patch	2019-12-10 14:49:39.111456667 +0000
@@ -0,0 +1,79 @@
+From 5e8a1c2a3bfe0f7ec1e1fe01b00ecf7112f29e3b Mon Sep 17 00:00:00 2001
+From: Bruce Richardson <bruce.richardson@intel.com>
+Date: Tue, 24 Sep 2019 13:04:14 +0100
+Subject: [PATCH] port: fix pcap support with meson
+
+[ upstream commit 268fa581b1ffbd3077279c18f5a86992b747a9c0]
+
+The meson build was missing the define to enable pcap port support if
+libpcap (development) package was found on the build platform. Rather than
+duplicating the checks for libpcap found in the pcap net PMD build file, we
+can move the checks to the top-level config directory and reference the
+RTE_PCAP_PORT setting elsewhere in the build.
+
+Bugzilla ID: 351
+Fixes: 5b9656b157d3 ("lib: build with meson")
+
+Reported-by: Cristian Bidea <cristian.bidea@keysight.com>
+Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
+Tested-by: Cristian Bidea <cristian.bidea@keysight.com>
+---
+ config/meson.build           | 13 +++++++++++++
+ drivers/net/pcap/meson.build |  6 ++----
+ lib/librte_port/meson.build  |  4 ++++
+ 3 files changed, 19 insertions(+), 4 deletions(-)
+
+diff --git a/config/meson.build b/config/meson.build
+index d76776137..616af9746 100644
+--- a/config/meson.build
++++ b/config/meson.build
+@@ -90,4 +90,17 @@ if host_machine.system() == 'linux' and cc.find_library('bsd',
+ endif
+ 
++# check for pcap
++pcap_dep = dependency('pcap', required: false)
++if pcap_dep.found()
++	# pcap got a pkg-config file only in 1.9.0 and before that meson uses
++	# an internal pcap-config finder, which is not compatible with
++	# cross-compilation, so try to fallback to find_library
++	pcap_dep = cc.find_library('pcap', required: false)
++endif
++if pcap_dep.found() and cc.has_header('pcap.h', dependencies: pcap_dep)
++	dpdk_conf.set('RTE_PORT_PCAP', 1)
++	dpdk_extra_ldflags += '-lpcap'
++endif
++
+ # add -include rte_config to cflags
+ add_project_arguments('-include', 'rte_config.h', language: 'c')
+diff --git a/drivers/net/pcap/meson.build b/drivers/net/pcap/meson.build
+index 0c4e0201a..2e84a5efc 100644
+--- a/drivers/net/pcap/meson.build
++++ b/drivers/net/pcap/meson.build
+@@ -2,9 +2,7 @@
+ # Copyright(c) 2017 Intel Corporation
+ 
+-pcap_dep = cc.find_library('pcap', required: false)
+-if pcap_dep.found() and cc.has_header('pcap.h', dependencies: pcap_dep)
+-	build = true
+-else
++if not dpdk_conf.has('RTE_PORT_PCAP')
+ 	build = false
++	reason = 'missing dependency, "libpcap"'
+ endif
+ sources = files('rte_eth_pcap.c')
+diff --git a/lib/librte_port/meson.build b/lib/librte_port/meson.build
+index 0d11456f0..1b48127c1 100644
+--- a/lib/librte_port/meson.build
++++ b/lib/librte_port/meson.build
+@@ -24,4 +24,8 @@ headers = files(
+ deps += ['ethdev', 'sched', 'ip_frag', 'cryptodev']
+ 
++if dpdk_conf.has('RTE_PORT_PCAP')
++	ext_deps += pcap_dep # dependency provided in config/meson.build
++endif
++
+ if dpdk_conf.has('RTE_LIBRTE_KNI')
+ 	sources += files('rte_port_kni.c')
+-- 
+2.21.0
+


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

end of thread, other threads:[~2019-12-10 15:02 UTC | newest]

Thread overview: 63+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-10 14:58 [dpdk-stable] patch 'app/testpmd: fix CRC strip command' has been queued to LTS release 18.11.6 Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix integer overflow' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: translate incoming log address to GPA' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: fix virtqueue not accessible' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'vhost: prevent zero copy mode if IOMMU is on' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix address of first segment' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/ixgbe: " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'doc: fix a common typo in NIC guides' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'app/testpmd: fix help for loop topology option' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/mlx4: remove dependency on libmnl in meson' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/axgbe: fix double unlock' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/af_packet: improve Tx statistics accuracy' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/enetc: fix BD ring alignment' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'bus/fslmc: fix global variable multiple definitions' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/igb: " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'crypto/null: " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'crypto/virtio: " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'compress/octeontx: " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'test: " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'reciprocal: fix off-by-one with 32-bit divisor' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'vfio: fix truncated BAR offset for 32-bit' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'ethdev: fix include of ethernet header file' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/bnxt: fix mbuf free when clearing Tx queue' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/i40e: fix exception with multi-driver' " Kevin Traynor
2019-12-10 14:58 ` [dpdk-stable] patch 'net/ixgbe: fix zeroing of RSS config' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/e1000: " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject deferred Rx start' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject deferred Tx " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject unsupported Rx multi-queue modes' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/virtio: reject unsupported Tx " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'vhost: fix IPv4 checksum' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/mlx: fix debug build with icc' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'app/testpmd: fix Tx checksum when TSO enabled' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix ping with MTU change' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix setting max RSS contexts' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: fix writing MTU to FW' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: expose some missing counters in port stats' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/bonding: use non deprecated PCI API' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'vhost: fix build on RHEL 7.6 for Power' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'app/procinfo: use strlcpy for copying string' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'examples/vm_power: fix type of cmdline token in cli' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'examples/l3fwd-power: fix Rx interrupt disabling' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'power: fix socket indicator value' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'examples/vm_power: fix build without i40e' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'usertools: fix pmdinfo with python 3 and pyelftools>=0.24' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'usertools: fix telemetry client with python 3' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'doc: fix description of links to EAL options pages' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'common/dpaax: fallback to check separate memory node for VM' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'doc: fix description of versioning macros' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'eventdev: fix possible use of uninitialized var' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'common/cpt: fix possible null dereference' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'compress/octeontx: remove commented out code' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'event/opdl: " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/bnxt: " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'mk: fix build on arm64' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'crypto/dpaa2_sec: fix length retrieved from hardware' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'examples/ipsec-secgw: fix GCM IV length' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'examples/ipsec-secgw: fix SHA256-HMAC digest " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'crypto/openssl: use local copy for session contexts' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/fm10k: fix mbuf free in vector Rx' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/igb: fix PHY status if PHY reset is not blocked' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'net/bonding: fix port ID check' " Kevin Traynor
2019-12-10 14:59 ` [dpdk-stable] patch 'port: fix pcap support with meson' " Kevin Traynor

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).