From patchwork Thu Nov 16 22:16:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joshua Washington X-Patchwork-Id: 134434 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id EA05443349; Thu, 16 Nov 2023 23:16:11 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5A1244027D; Thu, 16 Nov 2023 23:16:11 +0100 (CET) Received: from mail-pg1-f202.google.com (mail-pg1-f202.google.com [209.85.215.202]) by mails.dpdk.org (Postfix) with ESMTP id B240240150 for ; Thu, 16 Nov 2023 23:16:09 +0100 (CET) Received: by mail-pg1-f202.google.com with SMTP id 41be03b00d2f7-5bddc607b45so1660266a12.0 for ; Thu, 16 Nov 2023 14:16:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1700172969; x=1700777769; darn=dpdk.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=ndCkbe3P3+JTsRU3QDLTcsRIbMThP8jJ6fCrU9C8zkQ=; b=azD1uCKvbAikdZuLtroPHZJg/4HoXB5E4KxymUXkRv77T+T2/QvIX5EUVDP2f/qm31 wJS4465zaBWWyAHziOkjmjRoj9O5VvWVgzG0sl1io/22swVrGSC2KCq2CO61thcqivfm 8qoemujfMBRyPBJyu5WZkYAUEsX62SX7FX6uCab4VBnOwXMNPbcEjewWRicAdMefQq72 4YPTzdwQc29dj9P1CV5+lVtVbQwIob0g3OYLpAowSAAYdAEI9NJdlJgFUIEuCATBlUdg DJV7hxcUR0nOweIZ2lkXG3ahDkgFK6YxHJU2WlGwahzF+sK0M28NmokSLSqij+4dsvQs yYEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700172969; x=1700777769; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=ndCkbe3P3+JTsRU3QDLTcsRIbMThP8jJ6fCrU9C8zkQ=; b=LCNk1h8TzG0K4U72M4yIHhGv8rc/cIHefQfjOaXZIFM/3CQA3jmfNOLc2JtVD/dH8T zVbr1LYg7uHU31+63zLW8BH+kmZg5bKW2rCYo8hZ1mKnUqjPyQv8y8IlZpOYxAIWi7Of puqAsx+rVlA1CcNyCZyKXlUegBZAzssQ+MtyAIEurxiV/7aSihxOxKboPb9Jma4wHmku pe+OK9lJSpBX1cu6bE2U8OU2u/8uNPqf+W2EbdVbkSfV2iQr5qHHGPesZNKyUGvZ05G+ TyUweXoRy/vG9CfpvWTBSYz/obgvcF2S0xvHepJS6ttHKtAZ5LgDHWEV7Tb8anVQw1I0 adIw== X-Gm-Message-State: AOJu0YzWcXjzbLdZlWzl3qU5LJvle5fPDyvGekmpE6q+x2c9HAxQN/yk Ky8lARMmLUzCvzhQAcnYYp/fLiyi7SoMKA== X-Google-Smtp-Source: AGHT+IEXgOHbe1DzqN5D1ulgU0e5imE0Hj41ZuQH8Yi7gIhw0+EaKUHeIYz7FA52DTyHicF81hvX/n/M9+r03A== X-Received: from joshwash.sea.corp.google.com ([2620:15c:11c:202:9b91:39ff:daf6:cdb9]) (user=joshwash job=sendgmr) by 2002:a65:414a:0:b0:5bd:57e3:d89f with SMTP id x10-20020a65414a000000b005bd57e3d89fmr673560pgp.8.1700172968718; Thu, 16 Nov 2023 14:16:08 -0800 (PST) Date: Thu, 16 Nov 2023 14:16:05 -0800 Mime-Version: 1.0 X-Mailer: git-send-email 2.43.0.rc0.421.g78406f8d94-goog Message-ID: <20231116221605.2240305-1-joshwash@google.com> Subject: [PATCH] net/gve: add support for max_rx_bufsize From: Joshua Washington To: Junfeng Guo , Jeroen de Borst , Rushil Gupta , Joshua Washington Cc: dev@dpdk.org, Ferruh Yigit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org The new max_rx_bufsize field in dev_info can be used to guide mbuf sizes chosen by DPDK programs by ensuring that DPDK programs do not waste memory by using an mbuf size too large for the maximum RX buffer size. This patch adds support for this field in the GVE PMD. Signed-off-by: Joshua Washington Reviewed-by: Rushil Gupta Reviewed-by: Huisong Li --- drivers/net/gve/gve_ethdev.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c index 43b4ab523d..001cae2b98 100644 --- a/drivers/net/gve/gve_ethdev.c +++ b/drivers/net/gve/gve_ethdev.c @@ -296,10 +296,14 @@ gve_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info) dev_info->max_mac_addrs = 1; dev_info->max_rx_queues = priv->max_nb_rxq; dev_info->max_tx_queues = priv->max_nb_txq; - if (gve_is_gqi(priv)) + if (gve_is_gqi(priv)) { dev_info->min_rx_bufsize = GVE_RX_MIN_BUF_SIZE_GQI; - else + dev_info->max_rx_bufsize = GVE_RX_MAX_BUF_SIZE_GQI; + } else { dev_info->min_rx_bufsize = GVE_RX_MIN_BUF_SIZE_DQO; + dev_info->max_rx_bufsize = GVE_RX_MAX_BUF_SIZE_DQO; + } + dev_info->max_rx_pktlen = priv->max_mtu + RTE_ETHER_HDR_LEN; dev_info->max_mtu = priv->max_mtu; dev_info->min_mtu = RTE_ETHER_MIN_MTU;