From patchwork Thu Jan 9 17:16:03 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Slava Ovsiienko X-Patchwork-Id: 64379 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id EBA63A04F9; Thu, 9 Jan 2020 18:16:16 +0100 (CET) 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