[PATCH] net/gve: allow GVE MTU greater than RTE_ETHER_MTU

Joshua Washington joshwash at google.com
Fri Sep 29 22:38:25 CEST 2023


This patch corrects the MTU setting behavior in the GVE DPDK driver to
remove the artificial upper limit of RTE_ETHER_MTU. Instead, the max MTU
is dictated by the default value of the MTU that the device sends during
initialization, which will always be the maximum supported MTU.

Signed-off-by: Joshua Washington <joshwash at google.com>
---
 drivers/net/gve/gve_ethdev.c | 5 +++--
 drivers/net/gve/gve_ethdev.h | 3 ---
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c
index 9b25f3036b..b441f96623 100644
--- a/drivers/net/gve/gve_ethdev.c
+++ b/drivers/net/gve/gve_ethdev.c
@@ -7,6 +7,7 @@
 #include "base/gve_register.h"
 #include "base/gve_osdep.h"
 #include "gve_version.h"
+#include "rte_ether.h"
 
 static void
 gve_write_version(uint8_t *driver_version_register)
@@ -297,8 +298,8 @@ gve_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
 	dev_info->max_tx_queues = priv->max_nb_txq;
 	dev_info->min_rx_bufsize = GVE_MIN_BUF_SIZE;
 	dev_info->max_rx_pktlen = GVE_MAX_RX_PKTLEN;
-	dev_info->max_mtu = GVE_MAX_MTU;
-	dev_info->min_mtu = GVE_MIN_MTU;
+	dev_info->max_mtu = priv->max_mtu;
+	dev_info->min_mtu = RTE_ETHER_MIN_MTU;
 
 	dev_info->rx_offload_capa = 0;
 	dev_info->tx_offload_capa =
diff --git a/drivers/net/gve/gve_ethdev.h b/drivers/net/gve/gve_ethdev.h
index ca94a09a2f..1cba282128 100644
--- a/drivers/net/gve/gve_ethdev.h
+++ b/drivers/net/gve/gve_ethdev.h
@@ -23,9 +23,6 @@
 #define GVE_MIN_BUF_SIZE	    1024
 #define GVE_MAX_RX_PKTLEN	    65535
 
-#define GVE_MAX_MTU	RTE_ETHER_MTU
-#define GVE_MIN_MTU	RTE_ETHER_MIN_MTU
-
 #define GVE_TX_CKSUM_OFFLOAD_MASK (		\
 		RTE_MBUF_F_TX_L4_MASK  |	\
 		RTE_MBUF_F_TX_TCP_SEG)
-- 
2.42.0.582.g8ccd20d70d-goog



More information about the dev mailing list