From patchwork Wed Oct 13 13:15:03 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ivan Malov X-Patchwork-Id: 101336 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 B69A1A0C55; Wed, 13 Oct 2021 15:15:28 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A055C411C3; Wed, 13 Oct 2021 15:15:28 +0200 (CEST) Received: from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113]) by mails.dpdk.org (Postfix) with ESMTP id A354A40E64 for ; Wed, 13 Oct 2021 15:15:27 +0200 (CEST) Received: from localhost.localdomain (unknown [5.144.123.99]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by shelob.oktetlabs.ru (Postfix) with ESMTPSA id 3BDB07F670; Wed, 13 Oct 2021 16:15:27 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 3BDB07F670 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=oktetlabs.ru; s=default; t=1634130927; bh=ct6IILxeXqqTz5gQygKcl3MdLQBKBkRGd+x+96toBjs=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=MoCbT8sRIqT+ivdGpDVW7JqXxdKkeOYEWHhC7DkLAFhlA49+ERDOpxc9vhnVbKiPn EBKXwrZyypaZUFdjvdiPLFgHiVMQwk+uQa1TpTfMzcyf6UMFJ8Sz+IubTCeM6nnRyd K2VY4HdsJYFaWXsrpQpb51DvZwmSRMaTPvGIOxmI= From: Ivan Malov To: dev@dpdk.org Cc: Ferruh Yigit Date: Wed, 13 Oct 2021 16:15:03 +0300 Message-Id: <20211013131514.20376-1-ivan.malov@oktetlabs.ru> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20210929205730.775-1-ivan.malov@oktetlabs.ru> References: <20210929205730.775-1-ivan.malov@oktetlabs.ru> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v4 00/10] net/sfc: add support for tunnel offload 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 Sender: "dev" The first 6 patches comprise the fundamental part of the series. They are trying to be future-proof with respect to the planned HW/FW changes. 4 more patches form the adaptation part of some sort to make the offload work on the currently available HW/FW. This patch series should be applied on top of another patch series named "A means to negotiate delivery of Rx meta data": https://patches.dpdk.org/project/dpdk/list/?series=19373 Changes in v2: * Rebase on top of v4 of the above mentioned patch series Changes in v3: * Rebase as per request by Ferruh Yigit Changes in v4: * Minor adjustments as per request by Ferruh Yigit Ivan Malov (10): net/sfc: fence off 8 bits in Rx mark for tunnel offload common/sfc_efx/base: support recirculation ID in outer rules net/sfc: support jump flows in tunnel offload common/sfc_efx/base: match on recirc. ID in action rules net/sfc: support group flows in tunnel offload net/sfc: implement control path operations in tunnel offload net/sfc: override match fields in tunnel offload jump rules net/sfc: use action rules in tunnel offload jump rules net/sfc: support counters in tunnel offload jump rules net/sfc: refine pattern of group flows in tunnel offload doc/guides/nics/features/sfc.ini | 2 + drivers/common/sfc_efx/base/efx.h | 22 ++ drivers/common/sfc_efx/base/efx_impl.h | 1 + drivers/common/sfc_efx/base/efx_mae.c | 60 +++- drivers/common/sfc_efx/version.map | 2 + drivers/net/sfc/meson.build | 1 + drivers/net/sfc/sfc.h | 3 + drivers/net/sfc/sfc_dp.c | 47 +++ drivers/net/sfc/sfc_dp.h | 9 + drivers/net/sfc/sfc_dp_rx.h | 3 + drivers/net/sfc/sfc_ef100_rx.c | 26 +- drivers/net/sfc/sfc_ethdev.c | 4 + drivers/net/sfc/sfc_flow.c | 53 ++- drivers/net/sfc/sfc_flow.h | 14 + drivers/net/sfc/sfc_flow_tunnel.c | 480 +++++++++++++++++++++++++ drivers/net/sfc/sfc_flow_tunnel.h | 117 ++++++ drivers/net/sfc/sfc_mae.c | 473 +++++++++++++++++++++--- drivers/net/sfc/sfc_mae.h | 12 + drivers/net/sfc/sfc_mae_counter.c | 41 ++- drivers/net/sfc/sfc_mae_counter.h | 3 + drivers/net/sfc/sfc_rx.c | 10 +- 21 files changed, 1313 insertions(+), 70 deletions(-) create mode 100644 drivers/net/sfc/sfc_flow_tunnel.c create mode 100644 drivers/net/sfc/sfc_flow_tunnel.h