From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by dpdk.org (Postfix) with ESMTP id 4A12F1B1B6 for ; Wed, 24 Jan 2018 16:37:42 +0100 (CET) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 0206D22433; Wed, 24 Jan 2018 10:37:42 -0500 (EST) Received: from frontend1 ([10.202.2.160]) by compute1.internal (MEProxy); Wed, 24 Jan 2018 10:37:42 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fridaylinux.org; h=cc:date:from:in-reply-to:message-id:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=nJbSxuLrT8ullA1S8 pBL15F1uOiVLYLiTSRiyHf/raw=; b=bIXFkxLS8rSlV4UGhhkIKQ4Y1cu2N9gTz JgPHB940hVrkUvLN+tZ8ooN5aU3mnz0JZwLI3bhhguhu1Ej80pF6m3uzvmwuZWb5 2Izef95KEC1XNdSGgglyrjzz0xWnKJ6tcF79DXruyMwKU4eJvv3IJ9u5WUvpL7r6 bWQj7qXCrrXNPcfdnX6NbsWeiyZ6CqZGXCJhbn0L1l/VL4nCNghQzjc06lqzSvxV BwmMW38ftxHn8UCrp3kE3Ectx4E2gokYU21HfEZ6UOU1Us5kRyprXVrGz0brbIMi v93ghpxlNGJIDtkQq7JRvmDo8HUrQlRpO/X0nuNi7utUjspjDMUyA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=nJbSxuLrT8ullA1S8pBL15F1uOiVLYLiTSRiyHf/raw=; b=W8oOHB3v 4zbHShQO0u5LUzPj2l8jsC+THUCIqVs5MqqpiJXET3upyv8UyY5QDn5U9CihmYBB ws9d+Dz6LrIYarfow+iQuIhgzgbLte0C1IDKx3d09eQ2Rff98RSPVRXhZgGyEtm2 VGR62OPt+p0C0+g7trsqoB1h3aMcA+wmAGq1+mmytyTrfhsSGJufPeSfo5+Y8R7b sKRn77HfuUGRwPNbf4ih2AZua8+JYafLaXnwHK+rmMSE6Py0agxKLUQiJ41RpC/+ 0jsBlFtqjetuBTP24RkPCPvBPmrXp8EONr3Lw5JgmsJYOr2CJfDAxQ8FnDQ0uUgA EK2Y+/m8wM93ZA== X-ME-Sender: Received: from localhost.localdomain (unknown [115.150.27.206]) by mail.messagingengine.com (Postfix) with ESMTPA id D46D07E4C7; Wed, 24 Jan 2018 10:37:39 -0500 (EST) From: Yuanhan Liu To: Matan Azrad Cc: Adrien Mazarguil , dpdk stable Date: Wed, 24 Jan 2018 23:31:50 +0800 Message-Id: <1516808026-25523-42-git-send-email-yliu@fridaylinux.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1516808026-25523-1-git-send-email-yliu@fridaylinux.org> References: <1516808026-25523-1-git-send-email-yliu@fridaylinux.org> Subject: [dpdk-stable] patch 'net/mlx4: fix Tx packet drop application report' has been queued to LTS release 17.11.1 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Jan 2018 15:37:42 -0000 Hi, FYI, your patch has been queued to LTS release 17.11.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 01/26/18. So please shout if anyone has objections. Thanks. --yliu --- >>From d8876839f2bf136dcb3220141d517cb3cf4c68b2 Mon Sep 17 00:00:00 2001 From: Matan Azrad Date: Wed, 6 Dec 2017 17:57:49 +0000 Subject: [PATCH] net/mlx4: fix Tx packet drop application report [ upstream commit e3ecea72a85626a0708625b7ad9a290ebdecfe24 ] When invalid lkey is sent to HW, HW sends an error notification in completion function. The previous code wouldn't crash but doesn't add any application report in case of completion error, so application cannot know that packet actually was dropped in case of invalid lkey. Return back the lkey validation to Tx path. Fixes: 2eee458746bc ("net/mlx4: remove error flows from Tx fast path") Signed-off-by: Matan Azrad Acked-by: Adrien Mazarguil --- drivers/net/mlx4/mlx4_rxtx.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/drivers/net/mlx4/mlx4_rxtx.c b/drivers/net/mlx4/mlx4_rxtx.c index 2bfa8b1..0d008ed 100644 --- a/drivers/net/mlx4/mlx4_rxtx.c +++ b/drivers/net/mlx4/mlx4_rxtx.c @@ -468,7 +468,6 @@ mlx4_tx_burst_segs(struct rte_mbuf *buf, struct txq *txq, /* Memory region key (big endian) for this memory pool. */ lkey = mlx4_txq_mp2mr(txq, mlx4_txq_mb2mp(sbuf)); dseg->lkey = rte_cpu_to_be_32(lkey); -#ifndef NDEBUG /* Calculate the needed work queue entry size for this packet */ if (unlikely(dseg->lkey == rte_cpu_to_be_32((uint32_t)-1))) { /* MR does not exist. */ @@ -486,7 +485,6 @@ mlx4_tx_burst_segs(struct rte_mbuf *buf, struct txq *txq, (sq->head & sq->txbb_cnt) ? 0 : 1); return -1; } -#endif /* NDEBUG */ if (likely(sbuf->data_len)) { byte_count = rte_cpu_to_be_32(sbuf->data_len); } else { @@ -636,7 +634,6 @@ mlx4_tx_burst(void *dpdk_txq, struct rte_mbuf **pkts, uint16_t pkts_n) /* Memory region key (big endian). */ lkey = mlx4_txq_mp2mr(txq, mlx4_txq_mb2mp(buf)); dseg->lkey = rte_cpu_to_be_32(lkey); -#ifndef NDEBUG if (unlikely(dseg->lkey == rte_cpu_to_be_32((uint32_t)-1))) { /* MR does not exist. */ @@ -655,7 +652,6 @@ mlx4_tx_burst(void *dpdk_txq, struct rte_mbuf **pkts, uint16_t pkts_n) elt->buf = NULL; break; } -#endif /* NDEBUG */ /* Never be TXBB aligned, no need compiler barrier. */ dseg->byte_count = rte_cpu_to_be_32(buf->data_len); /* Fill the control parameters for this packet. */ -- 2.7.4