[PATCH 5/8] net/gve: update RSS config just after successful programming
Joshua Washington
joshwash at google.com
Sat Oct 3 04:51:37 CEST 2026
Moving this into the control op allows for better flexibility when
introducing the mailbox op, which will include support for a query
operation.
Signed-off-by: Joshua Washington <joshwash at google.com>
---
drivers/net/gve/base/gve_adminq.c | 5 +++++
drivers/net/gve/gve_ethdev.c | 6 ------
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/drivers/net/gve/base/gve_adminq.c b/drivers/net/gve/base/gve_adminq.c
index 4dd095880d..db3e43c6b0 100644
--- a/drivers/net/gve/base/gve_adminq.c
+++ b/drivers/net/gve/base/gve_adminq.c
@@ -3,9 +3,12 @@
* Copyright (C) 2015-2022 Google, Inc.
*/
+#include <rte_common.h>
+
#include "../gve_ethdev.h"
#include "gve_adminq.h"
#include "gve_register.h"
+#include "gve_rss.h"
#define GVE_MAX_ADMINQ_RELEASE_CHECK 500
#define GVE_ADMINQ_SLEEP_LEN 20
@@ -1275,6 +1278,8 @@ int gve_adminq_configure_rss(struct gve_priv *priv,
};
err = gve_adminq_execute_cmd(priv, &cmd);
+ if (err == 0)
+ gve_update_priv_rss_config(priv, rss_config);
out:
if (indir)
diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c
index 3ba99fd74c..49604f9362 100644
--- a/drivers/net/gve/gve_ethdev.c
+++ b/drivers/net/gve/gve_ethdev.c
@@ -243,8 +243,6 @@ gve_dev_configure(struct rte_eth_dev *dev)
if (err)
PMD_DRV_LOG(ERR,
"Could not reconfigure RSS redirection table.");
- else
- gve_update_priv_rss_config(priv, &update_reta_config);
gve_free_rss_config(&update_reta_config);
return err;
@@ -1161,8 +1159,6 @@ gve_rss_hash_update(struct rte_eth_dev *dev,
gve_rss_conf.indir_size * sizeof(*priv->rss_config.indir));
err = priv->ctrl_ops->configure_rss(priv, &gve_rss_conf);
- if (!err)
- gve_update_priv_rss_config(priv, &gve_rss_conf);
err:
gve_free_rss_config(&gve_rss_conf);
@@ -1239,8 +1235,6 @@ gve_rss_reta_update(struct rte_eth_dev *dev,
err = priv->ctrl_ops->configure_rss(priv, &gve_rss_conf);
if (err)
PMD_DRV_LOG(ERR, "Problem configuring RSS with device.");
- else
- gve_update_priv_rss_config(priv, &gve_rss_conf);
gve_free_rss_config(&gve_rss_conf);
return err;
--
2.56.0.rc1.315.gc6ed9934b7-goog
More information about the dev
mailing list