patch 'net/gve: fix queue setup and stop' has been queued to stable release 23.11.3
Xueming Li
xuemingl at nvidia.com
Mon Nov 11 07:27:59 CET 2024
Hi,
FYI, your patch has been queued to stable release 23.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 11/30/24. 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://git.dpdk.org/dpdk-stable/log/?h=23.11-staging
This queued commit can be viewed at:
https://git.dpdk.org/dpdk-stable/commit/?h=23.11-staging&id=33a52ddb8c7ebab75384199c141ce6097dd23855
Thanks.
Xueming Li <xuemingl at nvidia.com>
---
>From 33a52ddb8c7ebab75384199c141ce6097dd23855 Mon Sep 17 00:00:00 2001
From: Tathagat Priyadarshi <tathagat.dpdk at gmail.com>
Date: Wed, 31 Jul 2024 05:26:43 +0000
Subject: [PATCH] net/gve: fix queue setup and stop
Cc: Xueming Li <xuemingl at nvidia.com>
[ upstream commit 7174c8891dcfb2a148e03c5fe2f200742b2dadbe ]
Update the Tx/Rx queue setup/stop routines that are unique to DQO,
so that they may be called for instances that use the DQO RDA format
during dev start/stop
Fixes: b044845bb015 ("net/gve: support queue start/stop")
Signed-off-by: Tathagat Priyadarshi <tathagat.dpdk at gmail.com>
Acked-by: Joshua Washington <joshwash at google.com>
---
drivers/net/gve/gve_ethdev.c | 29 +++++++++++++++++++++++------
1 file changed, 23 insertions(+), 6 deletions(-)
diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c
index ecd37ff37f..bd683a64d7 100644
--- a/drivers/net/gve/gve_ethdev.c
+++ b/drivers/net/gve/gve_ethdev.c
@@ -140,11 +140,16 @@ gve_start_queues(struct rte_eth_dev *dev)
PMD_DRV_LOG(ERR, "Failed to create %u tx queues.", num_queues);
return ret;
}
- for (i = 0; i < num_queues; i++)
- if (gve_tx_queue_start(dev, i) != 0) {
+ for (i = 0; i < num_queues; i++) {
+ if (gve_is_gqi(priv))
+ ret = gve_tx_queue_start(dev, i);
+ else
+ ret = gve_tx_queue_start_dqo(dev, i);
+ if (ret != 0) {
PMD_DRV_LOG(ERR, "Fail to start Tx queue %d", i);
goto err_tx;
}
+ }
num_queues = dev->data->nb_rx_queues;
priv->rxqs = (struct gve_rx_queue **)dev->data->rx_queues;
@@ -167,9 +172,15 @@ gve_start_queues(struct rte_eth_dev *dev)
return 0;
err_rx:
- gve_stop_rx_queues(dev);
+ if (gve_is_gqi(priv))
+ gve_stop_rx_queues(dev);
+ else
+ gve_stop_rx_queues_dqo(dev);
err_tx:
- gve_stop_tx_queues(dev);
+ if (gve_is_gqi(priv))
+ gve_stop_tx_queues(dev);
+ else
+ gve_stop_tx_queues_dqo(dev);
return ret;
}
@@ -193,10 +204,16 @@ gve_dev_start(struct rte_eth_dev *dev)
static int
gve_dev_stop(struct rte_eth_dev *dev)
{
+ struct gve_priv *priv = dev->data->dev_private;
dev->data->dev_link.link_status = RTE_ETH_LINK_DOWN;
- gve_stop_tx_queues(dev);
- gve_stop_rx_queues(dev);
+ if (gve_is_gqi(priv)) {
+ gve_stop_tx_queues(dev);
+ gve_stop_rx_queues(dev);
+ } else {
+ gve_stop_tx_queues_dqo(dev);
+ gve_stop_rx_queues_dqo(dev);
+ }
dev->data->dev_started = 0;
--
2.34.1
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2024-11-11 14:23:08.585394669 +0800
+++ 0073-net-gve-fix-queue-setup-and-stop.patch 2024-11-11 14:23:05.172192839 +0800
@@ -1 +1 @@
-From 7174c8891dcfb2a148e03c5fe2f200742b2dadbe Mon Sep 17 00:00:00 2001
+From 33a52ddb8c7ebab75384199c141ce6097dd23855 Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl at nvidia.com>
+
+[ upstream commit 7174c8891dcfb2a148e03c5fe2f200742b2dadbe ]
@@ -11 +13,0 @@
-Cc: stable at dpdk.org
@@ -20 +22 @@
-index d202940873..db4ebe7036 100644
+index ecd37ff37f..bd683a64d7 100644
@@ -23 +25 @@
-@@ -288,11 +288,16 @@ gve_start_queues(struct rte_eth_dev *dev)
+@@ -140,11 +140,16 @@ gve_start_queues(struct rte_eth_dev *dev)
@@ -42 +44 @@
-@@ -315,9 +320,15 @@ gve_start_queues(struct rte_eth_dev *dev)
+@@ -167,9 +172,15 @@ gve_start_queues(struct rte_eth_dev *dev)
@@ -60 +62 @@
-@@ -362,10 +373,16 @@ gve_dev_start(struct rte_eth_dev *dev)
+@@ -193,10 +204,16 @@ gve_dev_start(struct rte_eth_dev *dev)
More information about the stable
mailing list