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 <joshw...@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

Reply via email to