patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3
@ 2017-08-09  3:43 Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'crypto/openssl: " Yuanhan Liu
                   ` (16 more replies)
  0 siblings, 17 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Pablo de Lara; +Cc: Declan Doherty, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From bcd974baebf9b16deb13f944034356c40196660b Mon Sep 17 00:00:00 2001
From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Date: Tue, 25 Jul 2017 06:24:55 +0100
Subject: [PATCH] crypto/aesni_mb: fix HMAC supported key sizes

[ upstream commit cefa431162fcef7f1ef0804beb25d7a9883fc54a ]

For HMAC algorithms (MD5-HMAC, SHAx-HMAC), the supported
key sizes are not a fixed value, but a range between
1 and the block size.

Fixes: 26c2e4ad5ad4 ("cryptodev: add capabilities discovery")

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
---
 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c
index 3d49e2a..287c8a5 100644
--- a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c
+++ b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c
@@ -48,9 +48,9 @@ static const struct rte_cryptodev_capabilities aesni_mb_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_MD5_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 12,
@@ -69,9 +69,9 @@ static const struct rte_cryptodev_capabilities aesni_mb_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 12,
@@ -90,9 +90,9 @@ static const struct rte_cryptodev_capabilities aesni_mb_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA224_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 14,
@@ -111,9 +111,9 @@ static const struct rte_cryptodev_capabilities aesni_mb_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 16,
@@ -132,9 +132,9 @@ static const struct rte_cryptodev_capabilities aesni_mb_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA384_HMAC,
 				.block_size = 128,
 				.key_size = {
-					.min = 128,
+					.min = 1,
 					.max = 128,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 24,
@@ -153,9 +153,9 @@ static const struct rte_cryptodev_capabilities aesni_mb_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
 				.block_size = 128,
 				.key_size = {
-					.min = 128,
+					.min = 1,
 					.max = 128,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 32,
-- 
2.7.4

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

* [dpdk-stable] patch 'crypto/openssl: fix HMAC supported key sizes' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'mbuf: fix doxygen comment of bulk alloc' " Yuanhan Liu
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Pablo de Lara; +Cc: Declan Doherty, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From d53f5aaec755a0a957addc482ad1bc72a84664b0 Mon Sep 17 00:00:00 2001
From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Date: Tue, 25 Jul 2017 06:24:56 +0100
Subject: [PATCH] crypto/openssl: fix HMAC supported key sizes

[ upstream commit e5e7bc712601f8eefe15997cc46265cdc0ace0ce ]

For HMAC algorithms (MD5-HMAC, SHAx-HMAC), the supported
key sizes are not a fixed value, but a range between
1 and the block size.

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

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
---
 drivers/crypto/openssl/rte_openssl_pmd_ops.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/crypto/openssl/rte_openssl_pmd_ops.c b/drivers/crypto/openssl/rte_openssl_pmd_ops.c
index 139fed1..a072e6e 100644
--- a/drivers/crypto/openssl/rte_openssl_pmd_ops.c
+++ b/drivers/crypto/openssl/rte_openssl_pmd_ops.c
@@ -48,9 +48,9 @@ static const struct rte_cryptodev_capabilities openssl_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_MD5_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 16,
@@ -90,9 +90,9 @@ static const struct rte_cryptodev_capabilities openssl_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA1_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 20,
@@ -132,9 +132,9 @@ static const struct rte_cryptodev_capabilities openssl_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA224_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 28,
@@ -174,9 +174,9 @@ static const struct rte_cryptodev_capabilities openssl_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA256_HMAC,
 				.block_size = 64,
 				.key_size = {
-					.min = 64,
+					.min = 1,
 					.max = 64,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 32,
@@ -216,9 +216,9 @@ static const struct rte_cryptodev_capabilities openssl_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA384_HMAC,
 				.block_size = 128,
 				.key_size = {
-					.min = 128,
+					.min = 1,
 					.max = 128,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 48,
@@ -258,9 +258,9 @@ static const struct rte_cryptodev_capabilities openssl_pmd_capabilities[] = {
 				.algo = RTE_CRYPTO_AUTH_SHA512_HMAC,
 				.block_size = 128,
 				.key_size = {
-					.min = 128,
+					.min = 1,
 					.max = 128,
-					.increment = 0
+					.increment = 1
 				},
 				.digest_size = {
 					.min = 64,
-- 
2.7.4

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

* [dpdk-stable] patch 'mbuf: fix doxygen comment of bulk alloc' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'crypto/openssl: " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: fix set link config' " Yuanhan Liu
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Pablo de Lara; +Cc: dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From 4e9c1cce3b841f7be4c4be3d7dd9204efd833b51 Mon Sep 17 00:00:00 2001
From: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Date: Wed, 26 Jul 2017 05:20:05 +0100
Subject: [PATCH] mbuf: fix doxygen comment of bulk alloc

[ upstream commit c0bad56ef8b84a2e03bff1f5739a52248d22aedd ]

When calling rte_pktmbuf_alloc_bulk, if there are
not enough objects in the mempool, it returns
a negative value, which should be reflected
in the Doxygen comments.

Fixes: 9ec201f5d6e7 ("mbuf: provide bulk allocation")

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
---
 lib/librte_mbuf/rte_mbuf.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h
index 00b8495..8a814df 100644
--- a/lib/librte_mbuf/rte_mbuf.h
+++ b/lib/librte_mbuf/rte_mbuf.h
@@ -1060,6 +1060,7 @@ static inline struct rte_mbuf *rte_pktmbuf_alloc(struct rte_mempool *mp)
  *    Array size
  *  @return
  *   - 0: Success
+ *   - -ENOENT: Not enough entries in the mempool; no mbufs are retrieved.
  */
 static inline int rte_pktmbuf_alloc_bulk(struct rte_mempool *pool,
 	 struct rte_mbuf **mbufs, unsigned count)
-- 
2.7.4

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

* [dpdk-stable] patch 'net/bnxt: fix set link config' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'crypto/openssl: " Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'mbuf: fix doxygen comment of bulk alloc' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: check invalid L2 filter id' " Yuanhan Liu
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Ajit Khaparde; +Cc: dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From 41f11fed26f6db4d446e12bc0ff67c9f71085057 Mon Sep 17 00:00:00 2001
From: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date: Thu, 20 Jul 2017 22:22:29 -0500
Subject: [PATCH] net/bnxt: fix set link config

[ upstream commit 645ad4d586e1bf4d58ef75dee3e734f0003e9f38 ]

remove the unnecessary rte_delay in bnxt_set_hwrm_link_config

Fixes: 7bc8e9a227cc ("net/bnxt: support async link notification")

Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
---
 drivers/net/bnxt/bnxt_hwrm.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index fef010f..115ff05 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -1501,7 +1501,6 @@ port_phy_cfg:
 			"Set link config failed with rc %d\n", rc);
 	}
 
-	rte_delay_ms(BNXT_LINK_WAIT_INTERVAL);
 error:
 	return rc;
 }
-- 
2.7.4

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

* [dpdk-stable] patch 'net/bnxt: check invalid L2 filter id' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (2 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: fix set link config' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: free filter before reusing it' " Yuanhan Liu
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Ajit Khaparde; +Cc: dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From 5d40ea8b4a16ef2983d5fb8359a3dbca5abd51dd Mon Sep 17 00:00:00 2001
From: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date: Thu, 20 Jul 2017 22:22:32 -0500
Subject: [PATCH] net/bnxt: check invalid L2 filter id

[ upstream commit 778f6209bc3b39339f2969a57ffb46f2cd396f15 ]

Add code to check for invalid filter_id in bnxt_hwrm_clear_filter

Fixes: f92735db1e4c ("net/bnxt: add L2 filter alloc/init/free")

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

diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index 115ff05..f0ed704 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -194,6 +194,9 @@ int bnxt_hwrm_clear_filter(struct bnxt *bp,
 	struct hwrm_cfa_l2_filter_free_input req = {.req_type = 0 };
 	struct hwrm_cfa_l2_filter_free_output *resp = bp->hwrm_cmd_resp_addr;
 
+	if (filter->fw_l2_filter_id == UINT64_MAX)
+		return 0;
+
 	HWRM_PREP(req, CFA_L2_FILTER_FREE, -1, resp);
 
 	req.l2_filter_id = rte_cpu_to_le_64(filter->fw_l2_filter_id);
-- 
2.7.4

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

* [dpdk-stable] patch 'net/bnxt: free filter before reusing it' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (3 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: check invalid L2 filter id' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/ixgbe: fix mirror rule index overflow' " Yuanhan Liu
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Ajit Khaparde; +Cc: dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From a28a5d08b48b49402ba2dd3943595334176ffea9 Mon Sep 17 00:00:00 2001
From: Ajit Khaparde <ajit.khaparde@broadcom.com>
Date: Thu, 20 Jul 2017 22:22:33 -0500
Subject: [PATCH] net/bnxt: free filter before reusing it

[ upstream commit 4cddfcb71b1edeed845aff0b19c9ea73622f79c6 ]

This patch sends the HWRM command to free a filter in the hardware,
before using it again.

Fixes: f92735db1e4c ("net/bnxt: add L2 filter alloc/init/free")

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

diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index f0ed704..fef00f6 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -219,6 +219,9 @@ int bnxt_hwrm_set_filter(struct bnxt *bp,
 	struct hwrm_cfa_l2_filter_alloc_output *resp = bp->hwrm_cmd_resp_addr;
 	uint32_t enables = 0;
 
+	if (filter->fw_l2_filter_id != UINT64_MAX)
+		bnxt_hwrm_clear_filter(bp, filter);
+
 	HWRM_PREP(req, CFA_L2_FILTER_ALLOC, -1, resp);
 
 	req.flags = rte_cpu_to_le_32(filter->flags);
-- 
2.7.4

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

* [dpdk-stable] patch 'net/ixgbe: fix mirror rule index overflow' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (4 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: free filter before reusing it' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/mlx5: fix inconsistent link status query' " Yuanhan Liu
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Qi Zhang; +Cc: dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From 94e19267e091b877cd8a3b77bf342db7d26dad12 Mon Sep 17 00:00:00 2001
From: Qi Zhang <qi.z.zhang@intel.com>
Date: Fri, 21 Jul 2017 16:56:37 +0800
Subject: [PATCH] net/ixgbe: fix mirror rule index overflow

[ upstream commit 9b2df1083aab703e73f6d76e8f41afacb463afe9 ]

Mirror rule id should not exceed the boundary defined by
IXGBE_MAX_MIRROR_RULES.

Fixes: fe3a45fd4104 ("ixgbe: add VMDq support")

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
 drivers/net/ixgbe/ixgbe_ethdev.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index 958537f..f994fed 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -5044,6 +5044,9 @@ ixgbe_mirror_rule_reset(struct rte_eth_dev *dev, uint8_t rule_id)
 	if (ixgbe_vmdq_mode_check(hw) < 0)
 		return -ENOTSUP;
 
+	if (rule_id >= IXGBE_MAX_MIRROR_RULES)
+		return -EINVAL;
+
 	memset(&mr_info->mr_conf[rule_id], 0,
 		sizeof(struct rte_eth_mirror_conf));
 
-- 
2.7.4

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

* [dpdk-stable] patch 'net/mlx5: fix inconsistent link status query' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (5 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/ixgbe: fix mirror rule index overflow' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/i40e: fix PF notify when VF is not up' " Yuanhan Liu
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Gowrishankar Muthukrishnan; +Cc: Nelio Laranjeiro, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From 2c98d1a61318b9b52e9975aa68fc2d676582cf27 Mon Sep 17 00:00:00 2001
From: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
Date: Tue, 25 Jul 2017 19:08:07 +0530
Subject: [PATCH] net/mlx5: fix inconsistent link status query

[ upstream commit ef09a7fc762073d9980b93bbd6fcf83e6e6b4abf ]

ETHTOOL_GLINKSETTINGS ioctl call in mlx5 pmd returns inconsistent
link status due to which any application relying on it would not
function correctly.

Fixes: 188408719888 ("net/mlx5: fix support for newer link speeds")

Signed-off-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
---
 drivers/net/mlx5/mlx5_ethdev.c | 28 ++++++++++++++++++++--------
 1 file changed, 20 insertions(+), 8 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_ethdev.c b/drivers/net/mlx5/mlx5_ethdev.c
index 0aa274e..ca981a5 100644
--- a/drivers/net/mlx5/mlx5_ethdev.c
+++ b/drivers/net/mlx5/mlx5_ethdev.c
@@ -119,6 +119,7 @@ struct ethtool_link_settings {
 #define ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT 38
 #define ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT 39
 #endif
+#define ETHTOOL_LINK_MODE_MASK_MAX_KERNEL_NU32 (SCHAR_MAX)
 
 /**
  * Return private structure associated with an Ethernet device.
@@ -754,9 +755,12 @@ static int
 mlx5_link_update_unlocked_gs(struct rte_eth_dev *dev, int wait_to_complete)
 {
 	struct priv *priv = mlx5_get_priv(dev);
-	struct ethtool_link_settings edata = {
-		.cmd = ETHTOOL_GLINKSETTINGS,
-	};
+	__extension__ struct {
+		struct ethtool_link_settings edata;
+		uint32_t link_mode_data[3 *
+					ETHTOOL_LINK_MODE_MASK_MAX_KERNEL_NU32];
+	} ecmd;
+
 	struct ifreq ifr;
 	struct rte_eth_link dev_link;
 	uint64_t sc;
@@ -769,15 +773,23 @@ mlx5_link_update_unlocked_gs(struct rte_eth_dev *dev, int wait_to_complete)
 	memset(&dev_link, 0, sizeof(dev_link));
 	dev_link.link_status = ((ifr.ifr_flags & IFF_UP) &&
 				(ifr.ifr_flags & IFF_RUNNING));
-	ifr.ifr_data = (void *)&edata;
+	memset(&ecmd, 0, sizeof(ecmd));
+	ecmd.edata.cmd = ETHTOOL_GLINKSETTINGS;
+	ifr.ifr_data = (void *)&ecmd;
 	if (priv_ifreq(priv, SIOCETHTOOL, &ifr)) {
 		DEBUG("ioctl(SIOCETHTOOL, ETHTOOL_GLINKSETTINGS) failed: %s",
 		      strerror(errno));
 		return -1;
 	}
-	dev_link.link_speed = edata.speed;
-	sc = edata.link_mode_masks[0] |
-		((uint64_t)edata.link_mode_masks[1] << 32);
+	ecmd.edata.link_mode_masks_nwords = -ecmd.edata.link_mode_masks_nwords;
+	if (priv_ifreq(priv, SIOCETHTOOL, &ifr)) {
+		DEBUG("ioctl(SIOCETHTOOL, ETHTOOL_GLINKSETTINGS) failed: %s",
+		      strerror(errno));
+		return -1;
+	}
+	dev_link.link_speed = ecmd.edata.speed;
+	sc = ecmd.edata.link_mode_masks[0] |
+		((uint64_t)ecmd.edata.link_mode_masks[1] << 32);
 	priv->link_speed_capa = 0;
 	if (sc & ETHTOOL_LINK_MODE_Autoneg_BIT)
 		priv->link_speed_capa |= ETH_LINK_SPEED_AUTONEG;
@@ -813,7 +825,7 @@ mlx5_link_update_unlocked_gs(struct rte_eth_dev *dev, int wait_to_complete)
 		  ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT |
 		  ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT))
 		priv->link_speed_capa |= ETH_LINK_SPEED_100G;
-	dev_link.link_duplex = ((edata.duplex == DUPLEX_HALF) ?
+	dev_link.link_duplex = ((ecmd.edata.duplex == DUPLEX_HALF) ?
 				ETH_LINK_HALF_DUPLEX : ETH_LINK_FULL_DUPLEX);
 	dev_link.link_autoneg = !(dev->data->dev_conf.link_speeds &
 				  ETH_LINK_SPEED_FIXED);
-- 
2.7.4

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

* [dpdk-stable] patch 'net/i40e: fix PF notify when VF is not up' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (6 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/mlx5: fix inconsistent link status query' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:53   ` Li, Xiaoyun
  2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix memory corruptions' " Yuanhan Liu
                   ` (8 subsequent siblings)
  16 siblings, 1 reply; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Xiaoyun Li; +Cc: Jingjing Wu, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From a01cf403496049b6991eedc7084279b3bd43b431 Mon Sep 17 00:00:00 2001
From: Xiaoyun Li <xiaoyun.li@intel.com>
Date: Fri, 28 Jul 2017 23:48:11 +0800
Subject: [PATCH] net/i40e: fix PF notify when VF is not up

[ upstream commit 035a8cf88f010c82de3040c895c801ce0849b065 ]

This patch stops PF from sending messages to inactive VF
and modifies VF state to active when VF reset is completed.

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

Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
---
 drivers/net/i40e/i40e_pf.c | 29 ++++++++++++++++-------------
 1 file changed, 16 insertions(+), 13 deletions(-)

diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c
index b36d901..978b82b 100644
--- a/drivers/net/i40e/i40e_pf.c
+++ b/drivers/net/i40e/i40e_pf.c
@@ -151,22 +151,22 @@ i40e_pf_host_vf_reset(struct i40e_pf_vf *vf, bool do_hw_reset)
 		val |= I40E_VPGEN_VFRTRIG_VFSWR_MASK;
 		I40E_WRITE_REG(hw, I40E_VPGEN_VFRTRIG(vf_id), val);
 		I40E_WRITE_FLUSH(hw);
-	}
 
 #define VFRESET_MAX_WAIT_CNT 100
-	/* Wait until VF reset is done */
-	for (i = 0; i < VFRESET_MAX_WAIT_CNT; i++) {
-		rte_delay_us(10);
-		val = I40E_READ_REG(hw, I40E_VPGEN_VFRSTAT(vf_id));
-		if (val & I40E_VPGEN_VFRSTAT_VFRD_MASK)
-			break;
-	}
+		/* Wait until VF reset is done */
+		for (i = 0; i < VFRESET_MAX_WAIT_CNT; i++) {
+			rte_delay_us(10);
+			val = I40E_READ_REG(hw, I40E_VPGEN_VFRSTAT(vf_id));
+			if (val & I40E_VPGEN_VFRSTAT_VFRD_MASK)
+				break;
+		}
 
-	if (i >= VFRESET_MAX_WAIT_CNT) {
-		PMD_DRV_LOG(ERR, "VF reset timeout");
-		return -ETIMEDOUT;
+		if (i >= VFRESET_MAX_WAIT_CNT) {
+			PMD_DRV_LOG(ERR, "VF reset timeout");
+			return -ETIMEDOUT;
+		}
+		vf->state = I40E_VF_ACTIVE;
 	}
-
 	/* This is not first time to do reset, do cleanup job first */
 	if (vf->vsi) {
 		/* Disable queues */
@@ -261,7 +261,10 @@ i40e_pf_host_send_msg_to_vf(struct i40e_pf_vf *vf,
 {
 	struct i40e_hw *hw = I40E_PF_TO_HW(vf->pf);
 	uint16_t abs_vf_id = hw->func_caps.vf_base_id + vf->vf_idx;
-	int ret;
+	int ret = I40E_ERR_ADMIN_QUEUE_ERROR;
+
+	if (vf->state == I40E_VF_INACTIVE)
+		return ret;
 
 	ret = i40e_aq_send_msg_to_vf(hw, abs_vf_id, opcode, retval,
 						msg, msglen, NULL);
-- 
2.7.4

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

* [dpdk-stable] patch 'test/bonding: fix memory corruptions' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (7 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/i40e: fix PF notify when VF is not up' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix parameters of a balance Tx' " Yuanhan Liu
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Herbert Guan; +Cc: Declan Doherty, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From ee9aa553356f323ba57c21995311646c84279724 Mon Sep 17 00:00:00 2001
From: Herbert Guan <herbert.guan@arm.com>
Date: Mon, 10 Jul 2017 19:13:46 +0800
Subject: [PATCH] test/bonding: fix memory corruptions

[ upstream commit 8d3708efece06212bde6b1e10b2251931e1e9961 ]

There were double-free problems in some test cases, which will cause
a duplicated mbuf will be added into mempool.  After double-free,
some new allocated mbuf will hold a same address and thus cause the
memory corruption.

Another minor issue is that in some test cases, allocated mbuf will
not be released after test case exits.  Hopefully these leaked mbuf
will be released by the next test case in its setup phase when
stopping the virtual pmd ports, while this do is a memory leak of
the exited test case.

To fix above 2 issues, this patch will do:
1) Release virtual pmd ports' tx queue in the clean up function
   remove_slaves_and_stop_bonded_device() of each test cases.
2) Do not release allocated mbufs for test bursts.  These mbufs
   will be released in remove_slaves_and_stop_bonded_device() when
   test case exits.

Fixes: 92073ef961ee ("bond: unit tests")

Signed-off-by: Herbert Guan <herbert.guan@arm.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
---
 app/test/test_link_bonding.c | 64 +++++++-------------------------------------
 1 file changed, 9 insertions(+), 55 deletions(-)

diff --git a/app/test/test_link_bonding.c b/app/test/test_link_bonding.c
index 52d2d05..aeb234f 100644
--- a/app/test/test_link_bonding.c
+++ b/app/test/test_link_bonding.c
@@ -221,6 +221,10 @@ static struct rte_eth_txconf tx_conf_default = {
 
 };
 
+static void free_virtualpmd_tx_queue(void);
+
+
+
 static int
 configure_ethdev(uint8_t port_id, uint8_t start, uint8_t en_isr)
 {
@@ -684,6 +688,7 @@ static int
 remove_slaves_and_stop_bonded_device(void)
 {
 	/* Clean up and remove slaves from bonded device */
+	free_virtualpmd_tx_queue();
 	while (test_params->bonded_slave_count > 0)
 		TEST_ASSERT_SUCCESS(test_remove_slave_from_bonded_device(),
 				"test_remove_slave_from_bonded_device failed");
@@ -1617,9 +1622,6 @@ test_roundrobin_rx_burst_on_single_slave(void)
 
 	/* free mbufs */
 	for (i = 0; i < MAX_PKT_BURST; i++) {
-		if (gen_pkt_burst[i] != NULL)
-			rte_pktmbuf_free(gen_pkt_burst[i]);
-
 		if (rx_pkt_burst[i] != NULL)
 			rte_pktmbuf_free(rx_pkt_burst[i]);
 	}
@@ -1966,12 +1968,6 @@ test_roundrobin_verify_slave_link_status_change_behaviour(void)
 	for (i = 0; i < MAX_PKT_BURST; i++) {
 		if (rx_pkt_burst[i] != NULL)
 			rte_pktmbuf_free(rx_pkt_burst[i]);
-
-		if (gen_pkt_burst[1][i] != NULL)
-			rte_pktmbuf_free(gen_pkt_burst[1][i]);
-
-		if (gen_pkt_burst[3][i] != NULL)
-			rte_pktmbuf_free(gen_pkt_burst[1][i]);
 	}
 
 	/* Clean up and remove slaves from bonded device */
@@ -2410,7 +2406,7 @@ test_activebackup_verify_slave_link_status_change_failover(void)
 
 	uint8_t slaves[RTE_MAX_ETHPORTS];
 
-	int i, j, burst_size, slave_count, primary_port;
+	int i, burst_size, slave_count, primary_port;
 
 	burst_size = 21;
 
@@ -2543,16 +2539,6 @@ test_activebackup_verify_slave_link_status_change_failover(void)
 			"(%d) port_stats.opackets not as expected",
 			test_params->slave_port_ids[3]);
 
-	/* free mbufs */
-	for (i = 0; i < TEST_ACTIVE_BACKUP_RX_BURST_SLAVE_COUNT; i++) {
-		for (j = 0; j < MAX_PKT_BURST; j++) {
-			if (pkt_burst[i][j] != NULL) {
-				rte_pktmbuf_free(pkt_burst[i][j]);
-				pkt_burst[i][j] = NULL;
-			}
-		}
-	}
-
 	/* Clean up and remove slaves from bonded device */
 	return remove_slaves_and_stop_bonded_device();
 }
@@ -3314,7 +3300,7 @@ test_balance_verify_slave_link_status_change_behaviour(void)
 
 	uint8_t slaves[RTE_MAX_ETHPORTS];
 
-	int i, j, burst_size, slave_count;
+	int i, burst_size, slave_count;
 
 	memset(pkt_burst, 0, sizeof(pkt_burst));
 
@@ -3452,16 +3438,6 @@ test_balance_verify_slave_link_status_change_behaviour(void)
 			test_params->bonded_port_id, (int)port_stats.ipackets,
 			burst_size * 3);
 
-	/* free mbufs allocate for rx testing */
-	for (i = 0; i < TEST_BALANCE_RX_BURST_SLAVE_COUNT; i++) {
-		for (j = 0; j < MAX_PKT_BURST; j++) {
-			if (pkt_burst[i][j] != NULL) {
-				rte_pktmbuf_free(pkt_burst[i][j]);
-				pkt_burst[i][j] = NULL;
-			}
-		}
-	}
-
 	/* Clean up and remove slaves from bonded device */
 	return remove_slaves_and_stop_bonded_device();
 }
@@ -3883,7 +3859,7 @@ test_broadcast_verify_slave_link_status_change_behaviour(void)
 
 	uint8_t slaves[RTE_MAX_ETHPORTS];
 
-	int i, j, burst_size, slave_count;
+	int i, burst_size, slave_count;
 
 	memset(pkt_burst, 0, sizeof(pkt_burst));
 
@@ -3980,16 +3956,6 @@ test_broadcast_verify_slave_link_status_change_behaviour(void)
 			"(%d) port_stats.ipackets not as expected\n",
 			test_params->bonded_port_id);
 
-	/* free mbufs allocate for rx testing */
-	for (i = 0; i < BROADCAST_LINK_STATUS_NUM_OF_SLAVES; i++) {
-		for (j = 0; j < MAX_PKT_BURST; j++) {
-			if (pkt_burst[i][j] != NULL) {
-				rte_pktmbuf_free(pkt_burst[i][j]);
-				pkt_burst[i][j] = NULL;
-			}
-		}
-	}
-
 	/* Clean up and remove slaves from bonded device */
 	return remove_slaves_and_stop_bonded_device();
 }
@@ -4405,7 +4371,7 @@ test_tlb_verify_slave_link_status_change_failover(void)
 
 	uint8_t slaves[RTE_MAX_ETHPORTS];
 
-	int i, j, burst_size, slave_count, primary_port;
+	int i, burst_size, slave_count, primary_port;
 
 	burst_size = 21;
 
@@ -4523,18 +4489,6 @@ test_tlb_verify_slave_link_status_change_failover(void)
 			"(%d) port_stats.ipackets not as expected\n",
 			test_params->bonded_port_id);
 
-	/* free mbufs */
-
-	for (i = 0; i < TEST_ADAPTIVE_TRANSMIT_LOAD_BALANCING_RX_BURST_SLAVE_COUNT; i++) {
-		for (j = 0; j < MAX_PKT_BURST; j++) {
-			if (pkt_burst[i][j] != NULL) {
-				rte_pktmbuf_free(pkt_burst[i][j]);
-				pkt_burst[i][j] = NULL;
-			}
-		}
-	}
-
-
 	/* Clean up and remove slaves from bonded device */
 	return remove_slaves_and_stop_bonded_device();
 }
-- 
2.7.4

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

* [dpdk-stable] patch 'test/bonding: fix parameters of a balance Tx' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (8 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix memory corruptions' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix namespace of the RSS tests' " Yuanhan Liu
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Herbert Guan; +Cc: Jianbo Liu, Declan Doherty, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From 39176477f288cfaec28f017718e5bcf4c8b83582 Mon Sep 17 00:00:00 2001
From: Herbert Guan <herbert.guan@arm.com>
Date: Thu, 13 Jul 2017 16:00:36 +0800
Subject: [PATCH] test/bonding: fix parameters of a balance Tx

[ upstream commit a048bde9b116f6eb27281e5640d0a4961e90c8f7 ]

When test case "test_balance_l23_tx_burst_ipv4_toggle_ip_addr" is
calling balance_l23_tx_burst(), the ip_addr instead of mac_addr
should be toggled according to the test name.

Fixes: 92073ef961ee ("bond: unit tests")

Signed-off-by: Herbert Guan <herbert.guan@arm.com>
Acked-by: Jianbo Liu <jianbo.liu@linaro.org>
Acked-by: Declan Doherty <declan.doherty@intel.com>
---
 app/test/test_link_bonding.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/test/test_link_bonding.c b/app/test/test_link_bonding.c
index aeb234f..2bbf6b5 100644
--- a/app/test/test_link_bonding.c
+++ b/app/test/test_link_bonding.c
@@ -2771,7 +2771,7 @@ balance_l23_tx_burst(uint8_t vlan_enabled, uint8_t ipv4,
 static int
 test_balance_l23_tx_burst_ipv4_toggle_ip_addr(void)
 {
-	return balance_l23_tx_burst(0, 1, 1, 0);
+	return balance_l23_tx_burst(0, 1, 0, 1);
 }
 
 static int
-- 
2.7.4

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

* [dpdk-stable] patch 'test/bonding: fix namespace of the RSS tests' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (9 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix parameters of a balance Tx' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/qede: fix chip details print' " Yuanhan Liu
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Daniel Mrzyglod; +Cc: Declan Doherty, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From bd03f26c4097222d01b8189a491e990c1bdfaad7 Mon Sep 17 00:00:00 2001
From: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
Date: Wed, 26 Jul 2017 17:44:03 +0200
Subject: [PATCH] test/bonding: fix namespace of the RSS tests

[ upstream commit 347ab0a3007e95c86eb9263d19f714bd6ccad4d5 ]

Drivers are looking by name of the device so change namespace to proper
one.

Fixes: 43b630244e7e ("app/test: add dynamic bonding RSS configuration")

Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
---
 app/test/test_link_bonding_rssconf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/test/test_link_bonding_rssconf.c b/app/test/test_link_bonding_rssconf.c
index e11da9b..23052a2 100644
--- a/app/test/test_link_bonding_rssconf.c
+++ b/app/test/test_link_bonding_rssconf.c
@@ -61,7 +61,7 @@
 #define RXTX_RING_SIZE			1024
 #define RXTX_QUEUE_COUNT		4
 
-#define BONDED_DEV_NAME         ("rssconf_bond_dev")
+#define BONDED_DEV_NAME         ("net_bonding_rss")
 
 #define SLAVE_DEV_NAME_FMT      ("rssconf_slave%d")
 #define SLAVE_RXTX_QUEUE_FMT      ("rssconf_slave%d_q%d")
-- 
2.7.4

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

* [dpdk-stable] patch 'net/qede: fix chip details print' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (10 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix namespace of the RSS tests' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/vmxnet3: fix filtering on promiscuous disabling' " Yuanhan Liu
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Rasesh Mody; +Cc: dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From dc83de71baa8b4320db9565aebb70076da6d9e4f Mon Sep 17 00:00:00 2001
From: Rasesh Mody <rasesh.mody@cavium.com>
Date: Mon, 24 Jul 2017 03:19:07 -0700
Subject: [PATCH] net/qede: fix chip details print

[ upstream commit 3818ac224fd7ff536b233d711ba6e9654186ab09 ]

Fix chip details printed as part of print adapter info

Fixes: 2ea6f76aff40 ("qede: add core driver")

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
---
 drivers/net/qede/qede_ethdev.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index 2322147..9d782ac 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -203,9 +203,10 @@ static void qede_print_adapter_info(struct qede_dev *qdev)
 
 	DP_INFO(edev, "*********************************\n");
 	DP_INFO(edev, " DPDK version:%s\n", rte_version());
-	DP_INFO(edev, " Chip details : %s%d\n",
+	DP_INFO(edev, " Chip details : %s %c%d\n",
 		  ECORE_IS_BB(edev) ? "BB" : "AH",
-		  CHIP_REV_IS_A0(edev) ? 0 : 1);
+		  'A' + edev->chip_rev,
+		  (int)edev->chip_metal);
 	snprintf(ver_str, QEDE_PMD_DRV_VER_STR_SIZE, "%d.%d.%d.%d",
 		 info->fw_major, info->fw_minor, info->fw_rev, info->fw_eng);
 	snprintf(drv_ver, QEDE_PMD_DRV_VER_STR_SIZE, "%s_%s",
-- 
2.7.4

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

* [dpdk-stable] patch 'net/vmxnet3: fix filtering on promiscuous disabling' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (11 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/qede: fix chip details print' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/i40e: fix Rx data segment buffer length' " Yuanhan Liu
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Chas Williams; +Cc: Shrikrishna Khare, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From c414070bc74aa6a6df60caa5ece75d30bc884e54 Mon Sep 17 00:00:00 2001
From: Chas Williams <ciwillia@brocade.com>
Date: Mon, 24 Jul 2017 10:22:42 -0400
Subject: [PATCH] net/vmxnet3: fix filtering on promiscuous disabling

[ upstream commit c1f7b53c83f37dcaf373b58e281ef16dc804bc14 ]

We should only restore shadow_vfta when hw_vlan_filter is active.
Otherwise, we should restore the previous filtering behavior.

Fixes: f003fc383487 ("vmxnet3: enable vlan filtering")

Signed-off-by: Chas Williams <ciwillia@brocade.com>
Acked-by: Shrikrishna Khare <skhare@vmware.com>
---
 drivers/net/vmxnet3/vmxnet3_ethdev.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c
index f123df9..aedac6c 100644
--- a/drivers/net/vmxnet3/vmxnet3_ethdev.c
+++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c
@@ -831,7 +831,10 @@ vmxnet3_dev_promiscuous_disable(struct rte_eth_dev *dev)
 	struct vmxnet3_hw *hw = dev->data->dev_private;
 	uint32_t *vf_table = hw->shared->devRead.rxFilterConf.vfTable;
 
-	memcpy(vf_table, hw->shadow_vfta, VMXNET3_VFT_TABLE_SIZE);
+	if (dev->data->dev_conf.rxmode.hw_vlan_filter)
+		memcpy(vf_table, hw->shadow_vfta, VMXNET3_VFT_TABLE_SIZE);
+	else
+		memset(vf_table, 0xff, VMXNET3_VFT_TABLE_SIZE);
 	vmxnet3_dev_set_rxmode(hw, VMXNET3_RXM_PROMISC, 0);
 	VMXNET3_WRITE_BAR1_REG(hw, VMXNET3_REG_CMD,
 			       VMXNET3_CMD_UPDATE_VLAN_FILTERS);
-- 
2.7.4

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

* [dpdk-stable] patch 'net/i40e: fix Rx data segment buffer length' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (12 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/vmxnet3: fix filtering on promiscuous disabling' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/enic: fix crash when freeing 0 packet to mempool' " Yuanhan Liu
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Qi Zhang; +Cc: Jianfeng Tan, Mark Kavanagh, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From 8426b5db0a4afaa7ed8d1b4b961789067cad885f Mon Sep 17 00:00:00 2001
From: Qi Zhang <qi.z.zhang@intel.com>
Date: Wed, 2 Aug 2017 15:22:09 +0800
Subject: [PATCH] net/i40e: fix Rx data segment buffer length

[ upstream commit 1ff8e79591a6cc99c475a50e87adb30d9b20569a ]

Buffer length be configured for each data segment should not exceed
the requested value, or device may fill data that exceed the boundary
of memory that be reserved.

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

Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Reviewed-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Tested-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
---
 drivers/net/i40e/i40e_rxtx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
index 602e40c..ba33b2a 100644
--- a/drivers/net/i40e/i40e_rxtx.c
+++ b/drivers/net/i40e/i40e_rxtx.c
@@ -2324,7 +2324,7 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq)
 	case I40E_FLAG_HEADER_SPLIT_DISABLED:
 	default:
 		rxq->rx_hdr_len = 0;
-		rxq->rx_buf_len = RTE_ALIGN(buf_size,
+		rxq->rx_buf_len = RTE_ALIGN_FLOOR(buf_size,
 			(1 << I40E_RXQ_CTX_DBUFF_SHIFT));
 		rxq->hs_mode = i40e_header_split_none;
 		break;
-- 
2.7.4

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

* [dpdk-stable] patch 'net/enic: fix crash when freeing 0 packet to mempool' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (13 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/i40e: fix Rx data segment buffer length' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09 19:27   ` John Daley (johndale)
  2017-08-09  3:43 ` [dpdk-stable] patch 'examples/l3fwd: fix IPv6 packet type parse' " Yuanhan Liu
  2017-08-09  3:44 ` [dpdk-stable] patch 'vhost: make page logging atomic' " Yuanhan Liu
  16 siblings, 1 reply; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Aaron Conole; +Cc: Vincent S . Cojot, John Daley, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From d471e9aabecec383a1e9187461ba88a70ce256cb Mon Sep 17 00:00:00 2001
From: Aaron Conole <aconole@redhat.com>
Date: Wed, 2 Aug 2017 14:02:13 -0400
Subject: [PATCH] net/enic: fix crash when freeing 0 packet to mempool

[ upstream commit f7a58af502e08368a267886535367f205d4a5de6 ]

Occasionally, the amount of packets to free from the work queue ends
perfectly on a boundary to have nb_free = 0 and pool = 0.  This causes
a segfault as follows:

  (gdb) bt
  #0  rte_mempool_default_cache
  #1  rte_mempool_put_bulk (n=0, obj_table=0x7f10deff2530, mp=0x0)
  #2  enic_free_wq_bufs (wq=wq@entry=0x7efabffcd5b0,
      completed_index=completed_index@entry=33)
  #3  0x00007f11e9c86e17 in enic_cleanup_wq (enic=<optimized out>,
      wq=wq@entry=0x7efabffcd5b0)
      at /usr/src/debug/openvswitch-2.6.1/dpdk-16.11/drivers/net/enic/enic_rxtx.c:442
  #4  0x00007f11e9c86e5f in enic_xmit_pkts (tx_queue=0x7efabffcd5b0,
      tx_pkts=0x7f10deffb1a8, nb_pkts=<optimized out>)
      at /usr/src/debug/openvswitch-2.6.1/dpdk-16.11/drivers/net/enic/enic_rxtx.c:470
  #5  0x00007f11e9e147ad in rte_eth_tx_burst (nb_pkts=<optimized out>,
      tx_pkts=0x7f10deffb1a8, queue_id=0, port_id=<optimized out>)

This commit makes the enic wq driver match other drivers who call the
bulk free, by checking that there are actual packets to free.

Fixes: 36935afbc53c ("net/enic: refactor Tx mbuf recycling")

Reported-by: Vincent S. Cojot <vcojot@redhat.com>
Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=1468631
Signed-off-by: Aaron Conole <aconole@redhat.com>
Reviewed-by: John Daley <johndale@cisco.com>
---
 drivers/net/enic/enic_rxtx.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/enic/enic_rxtx.c b/drivers/net/enic/enic_rxtx.c
index 912ea15..1934f8b 100644
--- a/drivers/net/enic/enic_rxtx.c
+++ b/drivers/net/enic/enic_rxtx.c
@@ -426,7 +426,8 @@ static inline void enic_free_wq_bufs(struct vnic_wq *wq, u16 completed_index)
 		tail_idx = enic_ring_incr(desc_count, tail_idx);
 	}
 
-	rte_mempool_put_bulk(pool, (void **)free, nb_free);
+	if (nb_free > 0)
+		rte_mempool_put_bulk(pool, (void **)free, nb_free);
 
 	wq->tail_idx = tail_idx;
 	wq->ring.desc_avail += nb_to_free;
-- 
2.7.4

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

* [dpdk-stable] patch 'examples/l3fwd: fix IPv6 packet type parse' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (14 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/enic: fix crash when freeing 0 packet to mempool' " Yuanhan Liu
@ 2017-08-09  3:43 ` Yuanhan Liu
  2017-08-09  3:44 ` [dpdk-stable] patch 'vhost: make page logging atomic' " Yuanhan Liu
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:43 UTC (permalink / raw)
  To: Qi Zhang; +Cc: dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From efb6b9aaf84a62d4e18ebc42c05e720b2aba8484 Mon Sep 17 00:00:00 2001
From: Qi Zhang <qi.z.zhang@intel.com>
Date: Fri, 4 Aug 2017 15:52:06 +0800
Subject: [PATCH] examples/l3fwd: fix IPv6 packet type parse

[ upstream commit 5b9b65b14e05c106bb8229c0fe0b347315da7d00 ]

Fix a typo that cause IPv6 packet type not be parsed.

Fixes: 71a7e2424e07 ("examples/l3fwd: fix using packet type blindly")

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
 examples/l3fwd/l3fwd_em.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/examples/l3fwd/l3fwd_em.c b/examples/l3fwd/l3fwd_em.c
index 9cc4460..46b327e 100644
--- a/examples/l3fwd/l3fwd_em.c
+++ b/examples/l3fwd/l3fwd_em.c
@@ -614,7 +614,7 @@ em_parse_ptype(struct rte_mbuf *m)
 				packet_type |= RTE_PTYPE_L4_UDP;
 		} else
 			packet_type |= RTE_PTYPE_L3_IPV4_EXT;
-	} else if (ether_type == rte_cpu_to_be_16(ETHER_TYPE_IPv4)) {
+	} else if (ether_type == rte_cpu_to_be_16(ETHER_TYPE_IPv6)) {
 		ipv6_hdr = (struct ipv6_hdr *)l3;
 		if (ipv6_hdr->proto == IPPROTO_TCP)
 			packet_type |= RTE_PTYPE_L3_IPV6 | RTE_PTYPE_L4_TCP;
-- 
2.7.4

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

* [dpdk-stable] patch 'vhost: make page logging atomic' has been queued to LTS release 16.11.3
  2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
                   ` (15 preceding siblings ...)
  2017-08-09  3:43 ` [dpdk-stable] patch 'examples/l3fwd: fix IPv6 packet type parse' " Yuanhan Liu
@ 2017-08-09  3:44 ` Yuanhan Liu
  16 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  3:44 UTC (permalink / raw)
  To: Tiwei Bie; +Cc: Xiao Wang, Maxime Coquelin, dpdk stable, Yuanhan Liu

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From c2d9c76b26d6626979ada03206a268b55d8f1248 Mon Sep 17 00:00:00 2001
From: Tiwei Bie <tiwei.bie@intel.com>
Date: Tue, 1 Aug 2017 17:01:21 +0800
Subject: [PATCH] vhost: make page logging atomic

[ backported from upstream commit 897f13a1f726cefdc68762da83f9d2225a85c27e ]

Each dirty page logging operation should be atomic. But it's not
atomic in current implementation. So it's possible that some dirty
pages can't be logged successfully when different threads try to
log different pages into the same byte of the log buffer concurrently.
This patch fixes this issue.

Fixes: b171fad1ffa5 ("vhost: log used vring changes")

Reported-by: Xiao Wang <xiao.w.wang@intel.com>
Signed-off-by: Tiwei Bie <tiwei.bie@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
 lib/librte_vhost/virtio_net.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/lib/librte_vhost/virtio_net.c b/lib/librte_vhost/virtio_net.c
index ec9f1e5..0027f39 100644
--- a/lib/librte_vhost/virtio_net.c
+++ b/lib/librte_vhost/virtio_net.c
@@ -50,10 +50,19 @@
 #define MAX_PKT_BURST 32
 #define VHOST_LOG_PAGE	4096
 
+/*
+ * Atomically set a bit in memory.
+ */
+static inline void __attribute__((always_inline))
+vhost_set_bit(unsigned int nr, volatile uint8_t *addr)
+{
+	__sync_fetch_and_or_8(addr, (1U << nr));
+}
+
 static inline void __attribute__((always_inline))
 vhost_log_page(uint8_t *log_base, uint64_t page)
 {
-	log_base[page / 8] |= 1 << (page % 8);
+	vhost_set_bit(page % 8, &log_base[page / 8]);
 }
 
 static inline void __attribute__((always_inline))
-- 
2.7.4

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

* Re: [dpdk-stable] patch 'net/i40e: fix PF notify when VF is not up' has been queued to LTS release 16.11.3
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/i40e: fix PF notify when VF is not up' " Yuanhan Liu
@ 2017-08-09  3:53   ` Li, Xiaoyun
  2017-08-09  4:05     ` Yuanhan Liu
  0 siblings, 1 reply; 22+ messages in thread
From: Li, Xiaoyun @ 2017-08-09  3:53 UTC (permalink / raw)
  To: Yuanhan Liu; +Cc: Wu, Jingjing, dpdk stable

Hi, this patch will cause DPDK PF failing to send messages to kernel VF, and can't get kernel interface in VM.
So I will rework on this issue.

-----Original Message-----
From: Yuanhan Liu [mailto:yliu@fridaylinux.org] 
Sent: Wednesday, August 9, 2017 11:44
To: Li, Xiaoyun <xiaoyun.li@intel.com>
Cc: Wu, Jingjing <jingjing.wu@intel.com>; dpdk stable <stable@dpdk.org>; Yuanhan Liu <yliu@fridaylinux.org>
Subject: patch 'net/i40e: fix PF notify when VF is not up' has been queued to LTS release 16.11.3

Hi,

FYI, your patch has been queued to LTS release 16.11.3

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

Thanks.

	--yliu

---
>From a01cf403496049b6991eedc7084279b3bd43b431 Mon Sep 17 00:00:00 2001
From: Xiaoyun Li <xiaoyun.li@intel.com>
Date: Fri, 28 Jul 2017 23:48:11 +0800
Subject: [PATCH] net/i40e: fix PF notify when VF is not up

[ upstream commit 035a8cf88f010c82de3040c895c801ce0849b065 ]

This patch stops PF from sending messages to inactive VF and modifies VF state to active when VF reset is completed.

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

Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
---
 drivers/net/i40e/i40e_pf.c | 29 ++++++++++++++++-------------
 1 file changed, 16 insertions(+), 13 deletions(-)

diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c index b36d901..978b82b 100644
--- a/drivers/net/i40e/i40e_pf.c
+++ b/drivers/net/i40e/i40e_pf.c
@@ -151,22 +151,22 @@ i40e_pf_host_vf_reset(struct i40e_pf_vf *vf, bool do_hw_reset)
 		val |= I40E_VPGEN_VFRTRIG_VFSWR_MASK;
 		I40E_WRITE_REG(hw, I40E_VPGEN_VFRTRIG(vf_id), val);
 		I40E_WRITE_FLUSH(hw);
-	}
 
 #define VFRESET_MAX_WAIT_CNT 100
-	/* Wait until VF reset is done */
-	for (i = 0; i < VFRESET_MAX_WAIT_CNT; i++) {
-		rte_delay_us(10);
-		val = I40E_READ_REG(hw, I40E_VPGEN_VFRSTAT(vf_id));
-		if (val & I40E_VPGEN_VFRSTAT_VFRD_MASK)
-			break;
-	}
+		/* Wait until VF reset is done */
+		for (i = 0; i < VFRESET_MAX_WAIT_CNT; i++) {
+			rte_delay_us(10);
+			val = I40E_READ_REG(hw, I40E_VPGEN_VFRSTAT(vf_id));
+			if (val & I40E_VPGEN_VFRSTAT_VFRD_MASK)
+				break;
+		}
 
-	if (i >= VFRESET_MAX_WAIT_CNT) {
-		PMD_DRV_LOG(ERR, "VF reset timeout");
-		return -ETIMEDOUT;
+		if (i >= VFRESET_MAX_WAIT_CNT) {
+			PMD_DRV_LOG(ERR, "VF reset timeout");
+			return -ETIMEDOUT;
+		}
+		vf->state = I40E_VF_ACTIVE;
 	}
-
 	/* This is not first time to do reset, do cleanup job first */
 	if (vf->vsi) {
 		/* Disable queues */
@@ -261,7 +261,10 @@ i40e_pf_host_send_msg_to_vf(struct i40e_pf_vf *vf,  {
 	struct i40e_hw *hw = I40E_PF_TO_HW(vf->pf);
 	uint16_t abs_vf_id = hw->func_caps.vf_base_id + vf->vf_idx;
-	int ret;
+	int ret = I40E_ERR_ADMIN_QUEUE_ERROR;
+
+	if (vf->state == I40E_VF_INACTIVE)
+		return ret;
 
 	ret = i40e_aq_send_msg_to_vf(hw, abs_vf_id, opcode, retval,
 						msg, msglen, NULL);
--
2.7.4

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

* Re: [dpdk-stable] patch 'net/i40e: fix PF notify when VF is not up' has been queued to LTS release 16.11.3
  2017-08-09  3:53   ` Li, Xiaoyun
@ 2017-08-09  4:05     ` Yuanhan Liu
  0 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-09  4:05 UTC (permalink / raw)
  To: Li, Xiaoyun; +Cc: Wu, Jingjing, dpdk stable

On Wed, Aug 09, 2017 at 03:53:36AM +0000, Li, Xiaoyun wrote:
> Hi, this patch will cause DPDK PF failing to send messages to kernel VF, and can't get kernel interface in VM.
> So I will rework on this issue.

Thanks for the note. I will drop it then.

	--yliu

> 
> -----Original Message-----
> From: Yuanhan Liu [mailto:yliu@fridaylinux.org] 
> Sent: Wednesday, August 9, 2017 11:44
> To: Li, Xiaoyun <xiaoyun.li@intel.com>
> Cc: Wu, Jingjing <jingjing.wu@intel.com>; dpdk stable <stable@dpdk.org>; Yuanhan Liu <yliu@fridaylinux.org>
> Subject: patch 'net/i40e: fix PF notify when VF is not up' has been queued to LTS release 16.11.3
> 
> Hi,
> 
> FYI, your patch has been queued to LTS release 16.11.3
> 
> Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
> It will be pushed if I get no objections before 08/11/17. So please shout if anyone has objections.
> 
> Thanks.
> 
> 	--yliu
> 
> ---
> >From a01cf403496049b6991eedc7084279b3bd43b431 Mon Sep 17 00:00:00 2001
> From: Xiaoyun Li <xiaoyun.li@intel.com>
> Date: Fri, 28 Jul 2017 23:48:11 +0800
> Subject: [PATCH] net/i40e: fix PF notify when VF is not up
> 
> [ upstream commit 035a8cf88f010c82de3040c895c801ce0849b065 ]
> 
> This patch stops PF from sending messages to inactive VF and modifies VF state to active when VF reset is completed.
> 
> Fixes: 4861cde46116 ("i40e: new poll mode driver")
> 
> Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
> Acked-by: Jingjing Wu <jingjing.wu@intel.com>
> ---
>  drivers/net/i40e/i40e_pf.c | 29 ++++++++++++++++-------------
>  1 file changed, 16 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c index b36d901..978b82b 100644
> --- a/drivers/net/i40e/i40e_pf.c
> +++ b/drivers/net/i40e/i40e_pf.c
> @@ -151,22 +151,22 @@ i40e_pf_host_vf_reset(struct i40e_pf_vf *vf, bool do_hw_reset)
>  		val |= I40E_VPGEN_VFRTRIG_VFSWR_MASK;
>  		I40E_WRITE_REG(hw, I40E_VPGEN_VFRTRIG(vf_id), val);
>  		I40E_WRITE_FLUSH(hw);
> -	}
>  
>  #define VFRESET_MAX_WAIT_CNT 100
> -	/* Wait until VF reset is done */
> -	for (i = 0; i < VFRESET_MAX_WAIT_CNT; i++) {
> -		rte_delay_us(10);
> -		val = I40E_READ_REG(hw, I40E_VPGEN_VFRSTAT(vf_id));
> -		if (val & I40E_VPGEN_VFRSTAT_VFRD_MASK)
> -			break;
> -	}
> +		/* Wait until VF reset is done */
> +		for (i = 0; i < VFRESET_MAX_WAIT_CNT; i++) {
> +			rte_delay_us(10);
> +			val = I40E_READ_REG(hw, I40E_VPGEN_VFRSTAT(vf_id));
> +			if (val & I40E_VPGEN_VFRSTAT_VFRD_MASK)
> +				break;
> +		}
>  
> -	if (i >= VFRESET_MAX_WAIT_CNT) {
> -		PMD_DRV_LOG(ERR, "VF reset timeout");
> -		return -ETIMEDOUT;
> +		if (i >= VFRESET_MAX_WAIT_CNT) {
> +			PMD_DRV_LOG(ERR, "VF reset timeout");
> +			return -ETIMEDOUT;
> +		}
> +		vf->state = I40E_VF_ACTIVE;
>  	}
> -
>  	/* This is not first time to do reset, do cleanup job first */
>  	if (vf->vsi) {
>  		/* Disable queues */
> @@ -261,7 +261,10 @@ i40e_pf_host_send_msg_to_vf(struct i40e_pf_vf *vf,  {
>  	struct i40e_hw *hw = I40E_PF_TO_HW(vf->pf);
>  	uint16_t abs_vf_id = hw->func_caps.vf_base_id + vf->vf_idx;
> -	int ret;
> +	int ret = I40E_ERR_ADMIN_QUEUE_ERROR;
> +
> +	if (vf->state == I40E_VF_INACTIVE)
> +		return ret;
>  
>  	ret = i40e_aq_send_msg_to_vf(hw, abs_vf_id, opcode, retval,
>  						msg, msglen, NULL);
> --
> 2.7.4

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

* Re: [dpdk-stable] patch 'net/enic: fix crash when freeing 0 packet to mempool' has been queued to LTS release 16.11.3
  2017-08-09  3:43 ` [dpdk-stable] patch 'net/enic: fix crash when freeing 0 packet to mempool' " Yuanhan Liu
@ 2017-08-09 19:27   ` John Daley (johndale)
  2017-08-10  1:24     ` Yuanhan Liu
  0 siblings, 1 reply; 22+ messages in thread
From: John Daley (johndale) @ 2017-08-09 19:27 UTC (permalink / raw)
  To: Yuanhan Liu, Aaron Conole; +Cc: Vincent S . Cojot, dpdk stable



> -----Original Message-----
> From: Yuanhan Liu [mailto:yliu@fridaylinux.org]
> Sent: Tuesday, August 08, 2017 8:44 PM
> To: Aaron Conole <aconole@redhat.com>
> Cc: Vincent S . Cojot <vcojot@redhat.com>; John Daley (johndale)
> <johndale@cisco.com>; dpdk stable <stable@dpdk.org>; Yuanhan Liu
> <yliu@fridaylinux.org>
> Subject: patch 'net/enic: fix crash when freeing 0 packet to mempool' has
> been queued to LTS release 16.11.3
> 
> Hi,
> 
> FYI, your patch has been queued to LTS release 16.11.3
> 
> Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
> It will be pushed if I get no objections before 08/11/17. So please shout if
> anyone has objections.

Certainly no objections from me. When are you targeting 16.11.3 release?

Thanks,
Johnd
> 
> Thanks.
> 
> 	--yliu
> 
> ---
> From d471e9aabecec383a1e9187461ba88a70ce256cb Mon Sep 17 00:00:00
> 2001
> From: Aaron Conole <aconole@redhat.com>
> Date: Wed, 2 Aug 2017 14:02:13 -0400
> Subject: [PATCH] net/enic: fix crash when freeing 0 packet to mempool
> 
> [ upstream commit f7a58af502e08368a267886535367f205d4a5de6 ]
> 
> Occasionally, the amount of packets to free from the work queue ends
> perfectly on a boundary to have nb_free = 0 and pool = 0.  This causes a
> segfault as follows:
> 
>   (gdb) bt
>   #0  rte_mempool_default_cache
>   #1  rte_mempool_put_bulk (n=0, obj_table=0x7f10deff2530, mp=0x0)
>   #2  enic_free_wq_bufs (wq=wq@entry=0x7efabffcd5b0,
>       completed_index=completed_index@entry=33)
>   #3  0x00007f11e9c86e17 in enic_cleanup_wq (enic=<optimized out>,
>       wq=wq@entry=0x7efabffcd5b0)
>       at /usr/src/debug/openvswitch-2.6.1/dpdk-
> 16.11/drivers/net/enic/enic_rxtx.c:442
>   #4  0x00007f11e9c86e5f in enic_xmit_pkts (tx_queue=0x7efabffcd5b0,
>       tx_pkts=0x7f10deffb1a8, nb_pkts=<optimized out>)
>       at /usr/src/debug/openvswitch-2.6.1/dpdk-
> 16.11/drivers/net/enic/enic_rxtx.c:470
>   #5  0x00007f11e9e147ad in rte_eth_tx_burst (nb_pkts=<optimized out>,
>       tx_pkts=0x7f10deffb1a8, queue_id=0, port_id=<optimized out>)
> 
> This commit makes the enic wq driver match other drivers who call the bulk
> free, by checking that there are actual packets to free.
> 
> Fixes: 36935afbc53c ("net/enic: refactor Tx mbuf recycling")
> 
> Reported-by: Vincent S. Cojot <vcojot@redhat.com>
> Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=1468631
> Signed-off-by: Aaron Conole <aconole@redhat.com>
> Reviewed-by: John Daley <johndale@cisco.com>
> ---
>  drivers/net/enic/enic_rxtx.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/enic/enic_rxtx.c b/drivers/net/enic/enic_rxtx.c index
> 912ea15..1934f8b 100644
> --- a/drivers/net/enic/enic_rxtx.c
> +++ b/drivers/net/enic/enic_rxtx.c
> @@ -426,7 +426,8 @@ static inline void enic_free_wq_bufs(struct vnic_wq
> *wq, u16 completed_index)
>  		tail_idx = enic_ring_incr(desc_count, tail_idx);
>  	}
> 
> -	rte_mempool_put_bulk(pool, (void **)free, nb_free);
> +	if (nb_free > 0)
> +		rte_mempool_put_bulk(pool, (void **)free, nb_free);
> 
>  	wq->tail_idx = tail_idx;
>  	wq->ring.desc_avail += nb_to_free;
> --
> 2.7.4

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

* Re: [dpdk-stable] patch 'net/enic: fix crash when freeing 0 packet to mempool' has been queued to LTS release 16.11.3
  2017-08-09 19:27   ` John Daley (johndale)
@ 2017-08-10  1:24     ` Yuanhan Liu
  0 siblings, 0 replies; 22+ messages in thread
From: Yuanhan Liu @ 2017-08-10  1:24 UTC (permalink / raw)
  To: John Daley (johndale); +Cc: Aaron Conole, Vincent S . Cojot, dpdk stable

On Wed, Aug 09, 2017 at 07:27:52PM +0000, John Daley (johndale) wrote:
> 
> 
> > -----Original Message-----
> > From: Yuanhan Liu [mailto:yliu@fridaylinux.org]
> > Sent: Tuesday, August 08, 2017 8:44 PM
> > To: Aaron Conole <aconole@redhat.com>
> > Cc: Vincent S . Cojot <vcojot@redhat.com>; John Daley (johndale)
> > <johndale@cisco.com>; dpdk stable <stable@dpdk.org>; Yuanhan Liu
> > <yliu@fridaylinux.org>
> > Subject: patch 'net/enic: fix crash when freeing 0 packet to mempool' has
> > been queued to LTS release 16.11.3
> > 
> > Hi,
> > 
> > FYI, your patch has been queued to LTS release 16.11.3
> > 
> > Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
> > It will be pushed if I get no objections before 08/11/17. So please shout if
> > anyone has objections.
> 
> Certainly no objections from me. When are you targeting 16.11.3 release?

Likely, at the end of this Month.

	--yliu

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

end of thread, other threads:[~2017-08-10  1:24 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-09  3:43 [dpdk-stable] patch 'crypto/aesni_mb: fix HMAC supported key sizes' has been queued to LTS release 16.11.3 Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'crypto/openssl: " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'mbuf: fix doxygen comment of bulk alloc' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: fix set link config' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: check invalid L2 filter id' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/bnxt: free filter before reusing it' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/ixgbe: fix mirror rule index overflow' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/mlx5: fix inconsistent link status query' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/i40e: fix PF notify when VF is not up' " Yuanhan Liu
2017-08-09  3:53   ` Li, Xiaoyun
2017-08-09  4:05     ` Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix memory corruptions' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix parameters of a balance Tx' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'test/bonding: fix namespace of the RSS tests' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/qede: fix chip details print' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/vmxnet3: fix filtering on promiscuous disabling' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/i40e: fix Rx data segment buffer length' " Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'net/enic: fix crash when freeing 0 packet to mempool' " Yuanhan Liu
2017-08-09 19:27   ` John Daley (johndale)
2017-08-10  1:24     ` Yuanhan Liu
2017-08-09  3:43 ` [dpdk-stable] patch 'examples/l3fwd: fix IPv6 packet type parse' " Yuanhan Liu
2017-08-09  3:44 ` [dpdk-stable] patch 'vhost: make page logging atomic' " Yuanhan Liu

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).