From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3C326A0C46; Fri, 18 Jun 2021 15:40:39 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 032B340150; Fri, 18 Jun 2021 15:40:39 +0200 (CEST) Received: from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113]) by mails.dpdk.org (Postfix) with ESMTP id 2D1AE40142 for ; Fri, 18 Jun 2021 15:40:38 +0200 (CEST) Received: by shelob.oktetlabs.ru (Postfix, from userid 122) id C58F77F6A6; Fri, 18 Jun 2021 16:40:37 +0300 (MSK) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shelob.oktetlabs.ru X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=ALL_TRUSTED, DKIM_ADSP_DISCARD, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.2 Received: from aros.oktetlabs.ru (aros.oktetlabs.ru [192.168.38.17]) by shelob.oktetlabs.ru (Postfix) with ESMTP id 11E387F578; Fri, 18 Jun 2021 16:40:34 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 11E387F578 Authentication-Results: shelob.oktetlabs.ru/11E387F578; dkim=none; dkim-atps=neutral From: Andrew Rybchenko To: dev@dpdk.org Cc: David Marchand Date: Fri, 18 Jun 2021 16:40:12 +0300 Message-Id: <20210618134032.1922012-1-andrew.rybchenko@oktetlabs.ru> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210527152510.1551026-1-andrew.rybchenko@oktetlabs.ru> References: <20210527152510.1551026-1-andrew.rybchenko@oktetlabs.ru> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v3 00/20] net/sfc: support flow API COUNT action 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" Update base driver and support COUNT action in transfer flow rules. v3: - fix build brekage because of incorrectly rebased and squashed in fix v2: - add release notes - add missing documentaion - fix spelling - handle query in stopped gracefully Andrew Rybchenko (6): net/sfc: do not enable interrupts on internal Rx queues common/sfc_efx/base: separate target EvQ and IRQ config common/sfc_efx/base: support custom EvQ to IRQ mapping net/sfc: explicitly control IRQ used for Rx queues net/sfc: add NUMA-aware registry of service logical cores common/sfc_efx/base: add packetiser packet format definition Igor Romanov (14): net/sfc: introduce ethdev Rx queue ID net/sfc: introduce ethdev Tx queue ID common/sfc_efx/base: add ingress m-port RxQ flag common/sfc_efx/base: add user mark RxQ flag net/sfc: add abstractions for the management EVQ identity net/sfc: add support for initialising different RxQ types net/sfc: reserve RxQ for counters common/sfc_efx/base: add counter creation MCDI wrappers common/sfc_efx/base: add counter stream MCDI wrappers common/sfc_efx/base: support counter in action set net/sfc: add Rx datapath method to get pushed buffers count common/sfc_efx/base: add max MAE counters to limits net/sfc: support flow action COUNT in transfer rules net/sfc: support flow API query for count actions doc/guides/nics/sfc_efx.rst | 2 + doc/guides/rel_notes/release_21_08.rst | 6 + drivers/common/sfc_efx/base/ef10_ev.c | 14 +- drivers/common/sfc_efx/base/ef10_impl.h | 1 + drivers/common/sfc_efx/base/ef10_rx.c | 57 +- drivers/common/sfc_efx/base/efx.h | 113 +++ drivers/common/sfc_efx/base/efx_ev.c | 39 +- drivers/common/sfc_efx/base/efx_impl.h | 8 +- drivers/common/sfc_efx/base/efx_mae.c | 430 ++++++++- drivers/common/sfc_efx/base/efx_mcdi.c | 7 +- drivers/common/sfc_efx/base/efx_mcdi.h | 7 + .../base/efx_regs_counters_pkt_format.h | 87 ++ drivers/common/sfc_efx/base/efx_rx.c | 14 +- drivers/common/sfc_efx/base/rhead_ev.c | 14 +- drivers/common/sfc_efx/base/rhead_impl.h | 1 + drivers/common/sfc_efx/base/rhead_rx.c | 6 + drivers/common/sfc_efx/version.map | 9 + drivers/net/sfc/meson.build | 12 + drivers/net/sfc/sfc.c | 68 +- drivers/net/sfc/sfc.h | 22 + drivers/net/sfc/sfc_dp.h | 6 + drivers/net/sfc/sfc_dp_rx.h | 4 + drivers/net/sfc/sfc_ef100_rx.c | 15 + drivers/net/sfc/sfc_ethdev.c | 115 ++- drivers/net/sfc/sfc_ev.c | 36 +- drivers/net/sfc/sfc_ev.h | 107 ++- drivers/net/sfc/sfc_flow.c | 77 +- drivers/net/sfc/sfc_flow.h | 6 + drivers/net/sfc/sfc_mae.c | 296 ++++++- drivers/net/sfc/sfc_mae.h | 61 ++ drivers/net/sfc/sfc_mae_counter.c | 827 ++++++++++++++++++ drivers/net/sfc/sfc_mae_counter.h | 58 ++ drivers/net/sfc/sfc_rx.c | 231 +++-- drivers/net/sfc/sfc_rx.h | 15 +- drivers/net/sfc/sfc_service.c | 99 +++ drivers/net/sfc/sfc_service.h | 20 + drivers/net/sfc/sfc_stats.h | 80 ++ drivers/net/sfc/sfc_tweak.h | 9 + drivers/net/sfc/sfc_tx.c | 164 ++-- drivers/net/sfc/sfc_tx.h | 11 +- 40 files changed, 2904 insertions(+), 250 deletions(-) create mode 100644 drivers/common/sfc_efx/base/efx_regs_counters_pkt_format.h create mode 100644 drivers/net/sfc/sfc_mae_counter.c create mode 100644 drivers/net/sfc/sfc_mae_counter.h create mode 100644 drivers/net/sfc/sfc_service.c create mode 100644 drivers/net/sfc/sfc_service.h create mode 100644 drivers/net/sfc/sfc_stats.h -- 2.30.2