From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?iso-8859-1?Q?N=E9lio?= Laranjeiro Subject: Re: [PATCH] net/mlx5: fix updating total length of multi-packet send Date: Wed, 8 Feb 2017 15:28:28 +0100 Message-ID: <20170208142828.GH28684@autoinstall.dev.6wind.com> References: <20170202184332.22187-1-yskoh@mellanox.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Cc: guillaume.gaudonville@6wind.com, ferruh.yigit@intel.com, dev@dpdk.org, adrien.mazarguil@6wind.com, stable@dpdk.org To: Yongseok Koh Return-path: Received: from mail-wr0-f176.google.com (mail-wr0-f176.google.com [209.85.128.176]) by dpdk.org (Postfix) with ESMTP id 766B8F72 for ; Wed, 8 Feb 2017 15:28:36 +0100 (CET) Received: by mail-wr0-f176.google.com with SMTP id o16so61615462wra.1 for ; Wed, 08 Feb 2017 06:28:36 -0800 (PST) Content-Disposition: inline In-Reply-To: <20170202184332.22187-1-yskoh@mellanox.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Thu, Feb 02, 2017 at 10:43:32AM -0800, Yongseok Koh wrote: > The total length field in descriptor of inlined multi-packet send must be > updated before closing a seesion. There's possibility of updating it > afterward. This bug might cause one packet out of MLX5_MPW_DSEG_MAX gets > silently dropped by HW and impact performance, escpecially lossless test. > > Fixes: 230189d9ff22 ("net/mlx5: support multi-packet send") > CC: stable@dpdk.org > > Signed-off-by: Yongseok Koh > --- > drivers/net/mlx5/mlx5_rxtx.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c > index 94fe74763..1043ebbc0 100644 > --- a/drivers/net/mlx5/mlx5_rxtx.c > +++ b/drivers/net/mlx5/mlx5_rxtx.c > @@ -1046,6 +1046,7 @@ mlx5_tx_burst_mpw_inline(void *dpdk_txq, struct rte_mbuf **pkts, > mpw.data.raw += length; > } > ++mpw.pkts_n; > + mpw.total_len += length; > ++j; > if (mpw.pkts_n == MLX5_MPW_DSEG_MAX) { > mlx5_mpw_inline_close(txq, &mpw); > @@ -1055,7 +1056,6 @@ mlx5_tx_burst_mpw_inline(void *dpdk_txq, struct rte_mbuf **pkts, > inline_room -= length; > } > } > - mpw.total_len += length; > elts_head = elts_head_next; > #ifdef MLX5_PMD_SOFT_COUNTERS > /* Increment sent bytes counter. */ > -- > 2.11.0 Acked-by: Nelio Laranjeiro -- Nélio Laranjeiro 6WIND