[v3,0/4] net/mlx5: remove Tx descriptor reserved field usage
Message ID | 1578590167-10167-1-git-send-email-viacheslavo@mellanox.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> 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 <dev@dpdk.org>; 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 <viacheslavo@mellanox.com> 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 <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Message
Slava Ovsiienko
Jan. 9, 2020, 5:16 p.m. UTC
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 <viacheslavo@mellanox.com>
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