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 49794A0C4C; Tue, 12 Oct 2021 21:38:54 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 05CE241124; Tue, 12 Oct 2021 21:38:39 +0200 (CEST) Received: from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113]) by mails.dpdk.org (Postfix) with ESMTP id A58D340142 for ; Tue, 12 Oct 2021 21:38:35 +0200 (CEST) Received: from localhost.localdomain (unknown [5.144.123.2]) (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 5738E7F6D4; Tue, 12 Oct 2021 22:38:35 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 5738E7F6D4 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=oktetlabs.ru; s=default; t=1634067515; bh=MsAuyIaGOWmV96GgqjSh2853iG9AaXX4SphvX1yRu6A=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=q/aFNL4d//DfjR6xmSPUrcjtc5SDgTy+Ch3InhlH29RVxAhp94e5soNKws2rlepPu daSSV66cmSJJv/5Ip5F9vpkq9FqwHx262o8yRjP4EgnBD3SwuyRmO3D1eSaLgIiuqL mKkzYauzMauGHBOfjgsX8fGUncOtvUMHc7pMGNWc= From: Ivan Malov To: dev@dpdk.org Cc: Ferruh Yigit , Andrew Rybchenko , Andy Moreton Date: Tue, 12 Oct 2021 22:38:27 +0300 Message-Id: <20211012193829.24782-4-ivan.malov@oktetlabs.ru> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20211012193829.24782-1-ivan.malov@oktetlabs.ru> References: <20210923112012.14595-1-ivan.malov@oktetlabs.ru> <20211012193829.24782-1-ivan.malov@oktetlabs.ru> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v6 3/5] net/sfc: support flow mark delivery on EF100 native datapath 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" MAE counter engine gets generation counts by virtue of the mark, so the code to extract the field is already in place, but flow action MARK doesn't benefit from it. Support this use case, too. Signed-off-by: Ivan Malov Reviewed-by: Andrew Rybchenko Reviewed-by: Andy Moreton --- drivers/net/sfc/sfc_ef100_rx.c | 1 + drivers/net/sfc/sfc_rx.c | 3 +++ 2 files changed, 4 insertions(+) diff --git a/drivers/net/sfc/sfc_ef100_rx.c b/drivers/net/sfc/sfc_ef100_rx.c index de35c19089..37957eae11 100644 --- a/drivers/net/sfc/sfc_ef100_rx.c +++ b/drivers/net/sfc/sfc_ef100_rx.c @@ -935,6 +935,7 @@ struct sfc_dp_rx sfc_ef100_rx = { .hw_fw_caps = SFC_DP_HW_FW_CAP_EF100, }, .features = SFC_DP_RX_FEAT_MULTI_PROCESS | + SFC_DP_RX_FEAT_FLOW_MARK | SFC_DP_RX_FEAT_INTR | SFC_DP_RX_FEAT_STATS, .dev_offload_capa = 0, diff --git a/drivers/net/sfc/sfc_rx.c b/drivers/net/sfc/sfc_rx.c index 280e8a61f9..5b924010bd 100644 --- a/drivers/net/sfc/sfc_rx.c +++ b/drivers/net/sfc/sfc_rx.c @@ -1178,6 +1178,9 @@ sfc_rx_qinit(struct sfc_adapter *sa, sfc_sw_index_t sw_index, if (offloads & DEV_RX_OFFLOAD_RSS_HASH) rxq_info->type_flags |= EFX_RXQ_FLAG_RSS_HASH; + if ((sa->negotiated_rx_metadata & RTE_ETH_RX_METADATA_USER_MARK) != 0) + rxq_info->type_flags |= EFX_RXQ_FLAG_USER_MARK; + rc = sfc_ev_qinit(sa, SFC_EVQ_TYPE_RX, sw_index, evq_entries, socket_id, &evq); if (rc != 0) -- 2.20.1