From patchwork Wed Jan 24 00:14:54 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joshua Washington X-Patchwork-Id: 136084 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 A8121439AD; Wed, 24 Jan 2024 01:15:10 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EBDD1410F2; Wed, 24 Jan 2024 01:15:08 +0100 (CET) Received: from mail-pl1-f201.google.com (mail-pl1-f201.google.com [209.85.214.201]) by mails.dpdk.org (Postfix) with ESMTP id 0ED1A40F16 for ; Wed, 24 Jan 2024 01:15:07 +0100 (CET) Received: by mail-pl1-f201.google.com with SMTP id d9443c01a7336-1d740687d8dso27647985ad.1 for ; Tue, 23 Jan 2024 16:15:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1706055306; x=1706660106; darn=dpdk.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=1k5laEoRzxWBqrRDyEFl5ZSMdsBt3lRyZ9CSh7xNtCU=; b=yz5uAx7NTuizrCUUZfAjG0WVsap2AHi6IMKRJfX2tOEXiVGIjbSLnowFWt5Ov1I1yL /tTmysLghvluz9rEvJOnhcdZ0LrUgO7tFGg4CNf94D8YRqtIRlDiOYRilx3Rl9WLKUKf z2jRuerTXbvlnWgQrhR0pFzj7FSh/KQ9lvWpKEpX2ItKTNKfrQTdiNnP8TXbdLryZCrj eTdCQFanjeXfzgtOhaAx/t07zaIPqu0PYG97iCmFR82xh/KW5+vTaBUv2YtUgBON/KAc boNn/V7VkrbJFWOJvpMJK9ialc2mwKHdtTr0gc/iXj3KnP/nwSH2U4KaB7FaX5gJ4p8G vvlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706055306; x=1706660106; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1k5laEoRzxWBqrRDyEFl5ZSMdsBt3lRyZ9CSh7xNtCU=; b=jeiUmTCRMePqBxTCSKFh32L3ELNXIt2Rl3g0f9z5PxobKvPXhFIs0Ai5IDaoPi0kQW 7z6pA+cCCzYYyHkQKAai2Dyqg0fbz9g8bH1g6Val+75GPWYVzWE7u8W4WqobdroOscph IkO3VhFzE0U8RIHMoXCksJYzgpo6nFIOLJVK7WjLBSsJVe4z+t05cgvobQuMFrgGX6Ps Lts3TDuI9N2OhPc11AAmasGM0YSbgtQD9u53CuumTxv0OnNfh+CIkWGL8UW5Ti+1SnRn YXiR175Ai9jF10p97yr8vVhTYNj7T/g7ASSo6LUmy9pZtESUV2NpBo0T/aF2hc+JG54W Nc3w== X-Gm-Message-State: AOJu0YwD/9v5TsVi4I5USIdmNNKHt13FghP9uWfIcnF/eFot8nUrk5Hr i0taa0mSxW3NNbpD4YOlhmOwHGfJePMlsnro98ngwJ/w1KYtTYTYwDso1V2Jy+YItED3DoR1M7f n/j6Bb6YTvA== X-Google-Smtp-Source: AGHT+IEzkgLjyr6n/ls0JK1LKouaqyjs+61bf9NyB+3ZeIzfWgOXIznFcwykxWEpMkIYXIwHn6MzEuATVQVnKg== X-Received: from joshwash.sea.corp.google.com ([2620:15c:11c:202:b9a2:fa74:abc3:bc47]) (user=joshwash job=sendgmr) by 2002:a17:902:ec8f:b0:1d7:38fc:1273 with SMTP id x15-20020a170902ec8f00b001d738fc1273mr11plg.5.1706055306174; Tue, 23 Jan 2024 16:15:06 -0800 (PST) Date: Tue, 23 Jan 2024 16:14:54 -0800 In-Reply-To: <20240124001501.446195-1-joshwash@google.com> Mime-Version: 1.0 References: <20240123175831.3219292-1-joshwash@google.com> <20240124001501.446195-1-joshwash@google.com> X-Mailer: git-send-email 2.43.0.429.g432eaa2c6b-goog Message-ID: <20240124001501.446195-2-joshwash@google.com> Subject: [PATCH v3 1/7] net/gve: fully expose RSS offload support in dev_info 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 This patch communicates that the GVE driver supports RSS, along with the RSS offloads supported by the driver. Signed-off-by: Joshua Washington Reviewed-by: Rushil Gupta Reviewed-by: Jeroen de Borst --- drivers/net/gve/gve_ethdev.c | 4 +++- drivers/net/gve/gve_ethdev.h | 8 ++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c index d162fd3864..6acdb4e13b 100644 --- a/drivers/net/gve/gve_ethdev.c +++ b/drivers/net/gve/gve_ethdev.c @@ -405,7 +405,7 @@ gve_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info) dev_info->max_mtu = priv->max_mtu; dev_info->min_mtu = RTE_ETHER_MIN_MTU; - dev_info->rx_offload_capa = 0; + dev_info->rx_offload_capa = RTE_ETH_RX_OFFLOAD_RSS_HASH; dev_info->tx_offload_capa = RTE_ETH_TX_OFFLOAD_MULTI_SEGS | RTE_ETH_TX_OFFLOAD_UDP_CKSUM | @@ -442,6 +442,8 @@ gve_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info) .nb_align = 1, }; + dev_info->flow_type_rss_offloads = GVE_RSS_OFFLOAD_ALL; + return 0; } diff --git a/drivers/net/gve/gve_ethdev.h b/drivers/net/gve/gve_ethdev.h index 9893fcfee6..14c72ec91a 100644 --- a/drivers/net/gve/gve_ethdev.h +++ b/drivers/net/gve/gve_ethdev.h @@ -33,6 +33,14 @@ RTE_MBUF_F_TX_L4_MASK | \ RTE_MBUF_F_TX_TCP_SEG) +#define GVE_RSS_OFFLOAD_ALL ( \ + RTE_ETH_RSS_IPV4 | \ + RTE_ETH_RSS_NONFRAG_IPV4_TCP | \ + RTE_ETH_RSS_IPV6 | \ + RTE_ETH_RSS_IPV6_EX | \ + RTE_ETH_RSS_NONFRAG_IPV6_TCP | \ + RTE_ETH_RSS_IPV6_TCP_EX) + /* A list of pages registered with the device during setup and used by a queue * as buffers */