From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 703A9C282DD for ; Thu, 9 Jan 2020 17:16:17 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id 294672067D for ; Thu, 9 Jan 2020 17:16:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 294672067D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mellanox.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C13A51DFEF; Thu, 9 Jan 2020 18:16:15 +0100 (CET) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 9C7E91DEA2 for ; Thu, 9 Jan 2020 18:16:13 +0100 (CET) Received: from Internal Mail-Server by MTLPINE1 (envelope-from viacheslavo@mellanox.com) with ESMTPS (AES256-SHA encrypted); 9 Jan 2020 19:16:11 +0200 Received: from pegasus11.mtr.labs.mlnx (pegasus11.mtr.labs.mlnx [10.210.16.104]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 009HGBAw030182; Thu, 9 Jan 2020 19:16:11 +0200 Received: from pegasus11.mtr.labs.mlnx (localhost [127.0.0.1]) by pegasus11.mtr.labs.mlnx (8.14.7/8.14.7) with ESMTP id 009HGBlQ010266; Thu, 9 Jan 2020 17:16:11 GMT Received: (from viacheslavo@localhost) by pegasus11.mtr.labs.mlnx (8.14.7/8.14.7/Submit) id 009HGBa8010264; Thu, 9 Jan 2020 17:16:11 GMT X-Authentication-Warning: pegasus11.mtr.labs.mlnx: viacheslavo set sender to viacheslavo@mellanox.com using -f From: Viacheslav Ovsiienko To: dev@dpdk.org Cc: matan@mellanox.com, rasland@mellanox.com, orika@mellanox.com Date: Thu, 9 Jan 2020 17:16:03 +0000 Message-Id: <1578590167-10167-1-git-send-email-viacheslavo@mellanox.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1578500161-20156-1-git-send-email-viacheslavo@mellanox.com> References: <1578500161-20156-1-git-send-email-viacheslavo@mellanox.com> Subject: [dpdk-dev] [PATCH v3 0/4] net/mlx5: remove Tx descriptor reserved field usage X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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 current Tx datapath implementation in mlx5 PMD uses the 16-bit reserved field within transmit descriptor to store the indices of the elts array keeping the mbuf pointers to be freed on transmit completion. On completion PMD fetches the descriptor index, then fetches the elts array index from reserved field and frees the mbufs. The new ConnectX-6DX NIC might use this reserved descriptor field and existing implementation might not work in intended way. To resolve this issue the dedicated buffer is introduced to store indices to instead of descriptor field. Signed-off-by: Viacheslav Ovsiienko Viacheslav Ovsiienko (4): net/mlx5: move Tx complete request routine net/mlx5: update Tx error handling routine net/mlx5: add free on completion queue net/mlx5: engage free on completion queue drivers/net/mlx5/mlx5_rxtx.c | 153 ++++++++++++++++++++----------------------- drivers/net/mlx5/mlx5_rxtx.h | 13 ++-- drivers/net/mlx5/mlx5_txq.c | 19 +++++- 3 files changed, 94 insertions(+), 91 deletions(-) -- v1: - http://patches.dpdk.org/cover/64293/ v2: - http://patches.dpdk.org/cover/64331/ - resolve minor compilation per patch issues v3: - change the fcq entry type to uint16_t in non-debug mode 1.8.3.1