[dpdk-stable] patch 'net/bnxt: fix drop enable in get Rx queue info' has been queued to stable release 19.11.6

luca.boccassi at gmail.com luca.boccassi at gmail.com
Wed Oct 28 11:43:52 CET 2020


Hi,

FYI, your patch has been queued to stable release 19.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 10/30/20. So please
shout if anyone has objections.

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

Thanks.

Luca Boccassi

---
>From 7215702b49d59a190de92b1dac5a5e4f713cf42f Mon Sep 17 00:00:00 2001
From: Lance Richardson <lance.richardson at broadcom.com>
Date: Tue, 22 Sep 2020 13:30:34 -0400
Subject: [PATCH] net/bnxt: fix drop enable in get Rx queue info

[ upstream commit bd881e8d2a075b2dd69362176e2f8c76c88187ec ]

Return correct value for rx_drop_en. Add per-queue field to
track rx_drop_en configuration.

Fixes: 2fc201884be8 ("net/bnxt: support rxq/txq get information")

Signed-off-by: Lance Richardson <lance.richardson at broadcom.com>
Reviewed-by: Somnath Kotur <somnath.kotur at broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
---
 drivers/net/bnxt/bnxt_ethdev.c | 5 ++---
 drivers/net/bnxt/bnxt_rxq.c    | 5 +++++
 drivers/net/bnxt/bnxt_rxq.h    | 4 ++++
 3 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index bbfe883c15..e219dbf0d0 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -541,8 +541,7 @@ static int bnxt_dev_info_get_op(struct rte_eth_dev *eth_dev,
 			.wthresh = 0,
 		},
 		.rx_free_thresh = 32,
-		/* If no descriptors available, pkts are dropped by default */
-		.rx_drop_en = 1,
+		.rx_drop_en = BNXT_DEFAULT_RX_DROP_EN,
 	};
 
 	dev_info->default_txconf = (struct rte_eth_txconf) {
@@ -2204,7 +2203,7 @@ bnxt_rxq_info_get_op(struct rte_eth_dev *dev, uint16_t queue_id,
 	qinfo->nb_desc = rxq->nb_rx_desc;
 
 	qinfo->conf.rx_free_thresh = rxq->rx_free_thresh;
-	qinfo->conf.rx_drop_en = 0;
+	qinfo->conf.rx_drop_en = rxq->drop_en;
 	qinfo->conf.rx_deferred_start = rxq->rx_deferred_start;
 }
 
diff --git a/drivers/net/bnxt/bnxt_rxq.c b/drivers/net/bnxt/bnxt_rxq.c
index e42308a97f..682cdb91ad 100644
--- a/drivers/net/bnxt/bnxt_rxq.c
+++ b/drivers/net/bnxt/bnxt_rxq.c
@@ -328,6 +328,11 @@ int bnxt_rx_queue_setup_op(struct rte_eth_dev *eth_dev,
 	rxq->nb_rx_desc = nb_desc;
 	rxq->rx_free_thresh = rx_conf->rx_free_thresh;
 
+	if (rx_conf->rx_drop_en != BNXT_DEFAULT_RX_DROP_EN)
+		PMD_DRV_LOG(NOTICE,
+			    "Per-queue config of drop-en is not supported.\n");
+	rxq->drop_en = BNXT_DEFAULT_RX_DROP_EN;
+
 	PMD_DRV_LOG(DEBUG, "RX Buf MTU %d\n", eth_dev->data->mtu);
 
 	rc = bnxt_init_rx_ring_struct(rxq, socket_id);
diff --git a/drivers/net/bnxt/bnxt_rxq.h b/drivers/net/bnxt/bnxt_rxq.h
index 4f5182d9e9..b722eeb2c8 100644
--- a/drivers/net/bnxt/bnxt_rxq.h
+++ b/drivers/net/bnxt/bnxt_rxq.h
@@ -6,6 +6,9 @@
 #ifndef _BNXT_RQX_H_
 #define _BNXT_RQX_H_
 
+/* Drop by default when receive desc is not available. */
+#define BNXT_DEFAULT_RX_DROP_EN		1
+
 struct bnxt;
 struct bnxt_rx_ring_info;
 struct bnxt_cp_ring_info;
@@ -31,6 +34,7 @@ struct bnxt_rx_queue {
 	uint8_t			crc_len; /* 0 if CRC stripped, 4 otherwise */
 	uint8_t			rx_deferred_start; /* not in global dev start */
 	uint8_t			rx_started; /* RX queue is started */
+	uint8_t			drop_en; /* Drop when rx desc not available. */
 
 	struct bnxt		*bp;
 	int			index;
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-10-28 10:35:14.039500061 +0000
+++ 0073-net-bnxt-fix-drop-enable-in-get-Rx-queue-info.patch	2020-10-28 10:35:11.572831025 +0000
@@ -1,13 +1,14 @@
-From bd881e8d2a075b2dd69362176e2f8c76c88187ec Mon Sep 17 00:00:00 2001
+From 7215702b49d59a190de92b1dac5a5e4f713cf42f Mon Sep 17 00:00:00 2001
 From: Lance Richardson <lance.richardson at broadcom.com>
 Date: Tue, 22 Sep 2020 13:30:34 -0400
 Subject: [PATCH] net/bnxt: fix drop enable in get Rx queue info
 
+[ upstream commit bd881e8d2a075b2dd69362176e2f8c76c88187ec ]
+
 Return correct value for rx_drop_en. Add per-queue field to
 track rx_drop_en configuration.
 
 Fixes: 2fc201884be8 ("net/bnxt: support rxq/txq get information")
-Cc: stable at dpdk.org
 
 Signed-off-by: Lance Richardson <lance.richardson at broadcom.com>
 Reviewed-by: Somnath Kotur <somnath.kotur at broadcom.com>
@@ -19,10 +20,10 @@
  3 files changed, 11 insertions(+), 3 deletions(-)
 
 diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
-index 5fc8d1ccb5..d0d11a6d0e 100644
+index bbfe883c15..e219dbf0d0 100644
 --- a/drivers/net/bnxt/bnxt_ethdev.c
 +++ b/drivers/net/bnxt/bnxt_ethdev.c
-@@ -929,8 +929,7 @@ static int bnxt_dev_info_get_op(struct rte_eth_dev *eth_dev,
+@@ -541,8 +541,7 @@ static int bnxt_dev_info_get_op(struct rte_eth_dev *eth_dev,
  			.wthresh = 0,
  		},
  		.rx_free_thresh = 32,
@@ -32,7 +33,7 @@
  	};
  
  	dev_info->default_txconf = (struct rte_eth_txconf) {
-@@ -2644,7 +2643,7 @@ bnxt_rxq_info_get_op(struct rte_eth_dev *dev, uint16_t queue_id,
+@@ -2204,7 +2203,7 @@ bnxt_rxq_info_get_op(struct rte_eth_dev *dev, uint16_t queue_id,
  	qinfo->nb_desc = rxq->nb_rx_desc;
  
  	qinfo->conf.rx_free_thresh = rxq->rx_free_thresh;
@@ -42,12 +43,12 @@
  }
  
 diff --git a/drivers/net/bnxt/bnxt_rxq.c b/drivers/net/bnxt/bnxt_rxq.c
-index 793a47d112..8cc77f7f9e 100644
+index e42308a97f..682cdb91ad 100644
 --- a/drivers/net/bnxt/bnxt_rxq.c
 +++ b/drivers/net/bnxt/bnxt_rxq.c
-@@ -330,6 +330,11 @@ int bnxt_rx_queue_setup_op(struct rte_eth_dev *eth_dev,
- 	rxq->rx_free_thresh =
- 		RTE_MIN(rte_align32pow2(nb_desc) / 4, RTE_BNXT_MAX_RX_BURST);
+@@ -328,6 +328,11 @@ int bnxt_rx_queue_setup_op(struct rte_eth_dev *eth_dev,
+ 	rxq->nb_rx_desc = nb_desc;
+ 	rxq->rx_free_thresh = rx_conf->rx_free_thresh;
  
 +	if (rx_conf->rx_drop_en != BNXT_DEFAULT_RX_DROP_EN)
 +		PMD_DRV_LOG(NOTICE,
@@ -58,12 +59,12 @@
  
  	rc = bnxt_init_rx_ring_struct(rxq, socket_id);
 diff --git a/drivers/net/bnxt/bnxt_rxq.h b/drivers/net/bnxt/bnxt_rxq.h
-index fae92ea45c..f70cb04373 100644
+index 4f5182d9e9..b722eeb2c8 100644
 --- a/drivers/net/bnxt/bnxt_rxq.h
 +++ b/drivers/net/bnxt/bnxt_rxq.h
-@@ -9,6 +9,9 @@
- /* Maximum receive burst supported in vector mode. */
- #define RTE_BNXT_MAX_RX_BURST		64U
+@@ -6,6 +6,9 @@
+ #ifndef _BNXT_RQX_H_
+ #define _BNXT_RQX_H_
  
 +/* Drop by default when receive desc is not available. */
 +#define BNXT_DEFAULT_RX_DROP_EN		1
@@ -71,7 +72,7 @@
  struct bnxt;
  struct bnxt_rx_ring_info;
  struct bnxt_cp_ring_info;
-@@ -34,6 +37,7 @@ struct bnxt_rx_queue {
+@@ -31,6 +34,7 @@ struct bnxt_rx_queue {
  	uint8_t			crc_len; /* 0 if CRC stripped, 4 otherwise */
  	uint8_t			rx_deferred_start; /* not in global dev start */
  	uint8_t			rx_started; /* RX queue is started */


More information about the stable mailing list