From patchwork Wed Sep 29 20:57:20 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ivan Malov X-Patchwork-Id: 100020 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 D5A52A0032; Wed, 29 Sep 2021 22:57:45 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C1EC9410F0; Wed, 29 Sep 2021 22:57:45 +0200 (CEST) Received: from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113]) by mails.dpdk.org (Postfix) with ESMTP id 7310D410EE for ; Wed, 29 Sep 2021 22:57:44 +0200 (CEST) Received: from localhost.localdomain (unknown [5.144.122.192]) (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 0055D7F553 for ; Wed, 29 Sep 2021 23:57:43 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 0055D7F553 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=oktetlabs.ru; s=default; t=1632949064; bh=QnCYkJurImPJLnBS5lUxI5AIfYM6eZQvYsw53Q96yoY=; h=From:To:Subject:Date; b=I+oj8C5Z7+4Wz0eL/p1wIyDhxLGZQRUOWrg7wbPpdsApE3YCHJfAhcb1yOPK7epkd rDmI3r8m13hwzsHLKoLA6d5FCntxXdQrsw40Lj/RhBy9rxNu0qDBE1aoYFFBCWWQJI U3zgLnSz8WVDdps1s+z692o8P0/N9IDXTxKQmka4= From: Ivan Malov To: dev@dpdk.org Date: Wed, 29 Sep 2021 23:57:20 +0300 Message-Id: <20210929205730.775-1-ivan.malov@oktetlabs.ru> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH 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=19109 Ivan Malov (10): net/sfc: fence off 8 bits in Rx mark for tunnel offload common/sfc_efx/base: add API to set RECIRC ID in outer rules net/sfc: support JUMP flows in tunnel offload common/sfc_efx/base: add RECIRC ID match in action rules API net/sfc: support GROUP flows in tunnel offload net/sfc: implement control path operations in tunnel offload net/sfc: override match on ETH 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 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 | 48 +++ 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 | 479 +++++++++++++++++++++++++ drivers/net/sfc/sfc_flow_tunnel.h | 117 ++++++ drivers/net/sfc/sfc_mae.c | 472 +++++++++++++++++++++--- 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 +- 20 files changed, 1310 insertions(+), 70 deletions(-) create mode 100644 drivers/net/sfc/sfc_flow_tunnel.c create mode 100644 drivers/net/sfc/sfc_flow_tunnel.h