From patchwork Tue Jan 23 17:58:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joshua Washington X-Patchwork-Id: 136070 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 B6B34439AA; Tue, 23 Jan 2024 18:58:50 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 68C32410E3; Tue, 23 Jan 2024 18:58:48 +0100 (CET) Received: from mail-yb1-f201.google.com (mail-yb1-f201.google.com [209.85.219.201]) by mails.dpdk.org (Postfix) with ESMTP id 176DD4025D for ; Tue, 23 Jan 2024 18:58:45 +0100 (CET) Received: by mail-yb1-f201.google.com with SMTP id 3f1490d57ef6-dc2284779caso5140304276.0 for ; Tue, 23 Jan 2024 09:58:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1706032724; x=1706637524; 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=bqlSucKco2VVm9KSx/V9+5AgAxzjNkkAi/ta6QhQlxdpkHStMq7DsN3zMe7HK/4uDy Q2RtHu3jsC2BQYcOraFW/WPLzmGYGPV0ZKQnw1nVbSJBrjeBIGvIWHiKeN2XXObUEGhS snrlzn3ayGf51YyfPeEa+Og18Z2BvSCP0669YalMQ+gGIqAbdBgszvopTAKfH80G1lKZ l8T1xIeueD9qkAB4BUTo//w9YBh1PnbRZGFCbrQJ+NeEuNGH+yobfFpdONi4DP0cSXnm ahDXDOPYFf9pycbCo00/8G/fTJjXhBwoGQ6pGCVpMwJ8TD3GUAiktZXt72SfVQVpW949 OtOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706032724; x=1706637524; 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=iJK4lQfd/us/nqm8MLua4qjC+SGOij5Z2RrNSulAfucQpWEiqel3D8hveUTFKdFx08 rQM9YdImuGxNilCF7LbD+pFG5EDu6a2r20lboXtZ44Y4MsDoDd+hmW5Y02Yn/QjVvk9P Q50uQD/+ly9ab49DJPSdpbfZs16v9D/PQACSU9ANYaXrPv+Hz8lN8IwOG+3crts9Yu+O OFlc+hOKjs6bOnnVM1Xl1iDgK+omcUtSYfX8Yyvk3gDbBZ5POZadjPfe/YlPdOb6VE4m ztRMNgEwCBT0vynd4enSmUvskMQh8b9Y7jE96ii4oWiGvzUQDtPIqSK64uNggNuY7XUy lLnQ== X-Gm-Message-State: AOJu0YzxMNWL2b4zf3T5MXTmYGyfOuxRcy2Q9kYQApZkRHFWDwYNjJw0 5+k14tyrqA2RUsdEZ5iEDhEzOiwG9nJ7fGO5teyRTCWYvTbUWn2bk92dNOdJlq78YZ04TS+txHN S/J5wGMTBhg== X-Google-Smtp-Source: AGHT+IFUqhyTjKisqalFRktd92KMOttzPTjsu9spfDeYY/YY1Et+pOF9S2qrQSQwXEPoA0Mxw1xV0VJ/gmK/Ug== X-Received: from joshwash.sea.corp.google.com ([2620:15c:11c:202:b9a2:fa74:abc3:bc47]) (user=joshwash job=sendgmr) by 2002:a25:d08f:0:b0:dc2:25fd:eff1 with SMTP id h137-20020a25d08f000000b00dc225fdeff1mr342062ybg.4.1706032724397; Tue, 23 Jan 2024 09:58:44 -0800 (PST) Date: Tue, 23 Jan 2024 09:58:24 -0800 In-Reply-To: <20240123175831.3219292-1-joshwash@google.com> Mime-Version: 1.0 References: <20240123175831.3219292-1-joshwash@google.com> X-Mailer: git-send-email 2.43.0.429.g432eaa2c6b-goog Message-ID: <20240123175831.3219292-2-joshwash@google.com> Subject: [PATCH v2 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 */