[dpdk-stable] patch 'net/ena: set IO ring size to valid value' has been queued to stable release 19.11.3

luca.boccassi at gmail.com luca.boccassi at gmail.com
Tue May 19 15:03:16 CEST 2020


Hi,

FYI, your patch has been queued to stable release 19.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 05/21/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 2c0c0e482038746ef7994021ba805dd2061823d2 Mon Sep 17 00:00:00 2001
From: Michal Krawczyk <mk at semihalf.com>
Date: Wed, 8 Apr 2020 10:29:08 +0200
Subject: [PATCH] net/ena: set IO ring size to valid value

[ upstream commit badc3a6aa133a886a61b9e3ad666e5675f7ec3d3 ]

IO rings were configured with the maximum allowed size for the Tx/Rx
rings. However, the application could decide to create smaller rings.

This patch is using value stored in the ring instead of the value from
the adapter which is indicating the maximum allowed value.

Fixes: df238f84c0a2 ("net/ena: recreate HW IO rings on start and stop")

Signed-off-by: Michal Krawczyk <mk at semihalf.com>
Reviewed-by: Igor Chauskin <igorch at amazon.com>
Reviewed-by: Guy Tzalik <gtzalik at amazon.com>
---
 drivers/net/ena/ena_ethdev.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index 758d68d10b..36e9b4ad9e 100644
--- a/drivers/net/ena/ena_ethdev.c
+++ b/drivers/net/ena/ena_ethdev.c
@@ -1079,16 +1079,15 @@ static int ena_create_io_queue(struct ena_ring *ring)
 		ena_qid = ENA_IO_TXQ_IDX(ring->id);
 		ctx.direction = ENA_COM_IO_QUEUE_DIRECTION_TX;
 		ctx.mem_queue_type = ena_dev->tx_mem_queue_type;
-		ctx.queue_size = adapter->tx_ring_size;
 		for (i = 0; i < ring->ring_size; i++)
 			ring->empty_tx_reqs[i] = i;
 	} else {
 		ena_qid = ENA_IO_RXQ_IDX(ring->id);
 		ctx.direction = ENA_COM_IO_QUEUE_DIRECTION_RX;
-		ctx.queue_size = adapter->rx_ring_size;
 		for (i = 0; i < ring->ring_size; i++)
 			ring->empty_rx_reqs[i] = i;
 	}
+	ctx.queue_size = ring->ring_size;
 	ctx.qid = ena_qid;
 	ctx.msix_vector = -1; /* interrupts not used */
 	ctx.numa_node = ring->numa_socket_id;
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-05-19 14:04:46.979293429 +0100
+++ 0061-net-ena-set-IO-ring-size-to-valid-value.patch	2020-05-19 14:04:44.208648228 +0100
@@ -1,8 +1,10 @@
-From badc3a6aa133a886a61b9e3ad666e5675f7ec3d3 Mon Sep 17 00:00:00 2001
+From 2c0c0e482038746ef7994021ba805dd2061823d2 Mon Sep 17 00:00:00 2001
 From: Michal Krawczyk <mk at semihalf.com>
 Date: Wed, 8 Apr 2020 10:29:08 +0200
 Subject: [PATCH] net/ena: set IO ring size to valid value
 
+[ upstream commit badc3a6aa133a886a61b9e3ad666e5675f7ec3d3 ]
+
 IO rings were configured with the maximum allowed size for the Tx/Rx
 rings. However, the application could decide to create smaller rings.
 
@@ -10,7 +12,6 @@
 the adapter which is indicating the maximum allowed value.
 
 Fixes: df238f84c0a2 ("net/ena: recreate HW IO rings on start and stop")
-Cc: stable at dpdk.org
 
 Signed-off-by: Michal Krawczyk <mk at semihalf.com>
 Reviewed-by: Igor Chauskin <igorch at amazon.com>
@@ -20,10 +21,10 @@
  1 file changed, 1 insertion(+), 2 deletions(-)
 
 diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
-index f1202d99f2..62e26a2a16 100644
+index 758d68d10b..36e9b4ad9e 100644
 --- a/drivers/net/ena/ena_ethdev.c
 +++ b/drivers/net/ena/ena_ethdev.c
-@@ -1099,16 +1099,15 @@ static int ena_create_io_queue(struct ena_ring *ring)
+@@ -1079,16 +1079,15 @@ static int ena_create_io_queue(struct ena_ring *ring)
  		ena_qid = ENA_IO_TXQ_IDX(ring->id);
  		ctx.direction = ENA_COM_IO_QUEUE_DIRECTION_TX;
  		ctx.mem_queue_type = ena_dev->tx_mem_queue_type;


More information about the stable mailing list