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 Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id 94A61ECAAA1 for ; Mon, 19 Sep 2022 16:57:30 +0000 (UTC) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D7AFD40E0F; Mon, 19 Sep 2022 18:57:29 +0200 (CEST) Received: from mail-qt1-f170.google.com (mail-qt1-f170.google.com [209.85.160.170]) by mails.dpdk.org (Postfix) with ESMTP id 6C6C040141 for ; Mon, 19 Sep 2022 18:57:28 +0200 (CEST) Received: by mail-qt1-f170.google.com with SMTP id ay9so10318181qtb.0 for ; Mon, 19 Sep 2022 09:57:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=KJpqurcki4VIT0yfH3Gs4VZ/8Bq0eqdSUwRrK0M1vdk=; b=nBgGQsp7Tzz1HrcWsWGQeV/GnnaIZ8u51QY0J5QQi5WYkIzKQztX20ZJiBw7ygqUaD i30pR9koIUeEDYEaByF9qpGsGAXflwzaUxiZIR2VmUTwKQF2BlE1IPpx7b6WxyFDSitr 9Erbs3Gry3iCam0swb4lrpNPryh6pSj7u9yWz4Dp7nmcEHPDPNKQ2tNHFDVFGFXKDqR5 /R73B3ic6NeibS9q35dVc3aQatTQX2VrnfKhoCQPGI+yH3Nocj2+O2X0wRxkcLo0X7g+ Gcv6KjuH56gOOl/JLxvtdGIncpPl+jpELqeGkIwVSECiTMQpdM1VSg22KHpkb4M7+sp0 y+Zw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=KJpqurcki4VIT0yfH3Gs4VZ/8Bq0eqdSUwRrK0M1vdk=; b=tON2WAJdr+79VlYIIMcNDFo1nX77QX/3aONyqaVNqGoNCAsg3rGvzsVw8/AnvVf1z3 mjD4OAm7b9wpHAMrM/KEFJtzfqaHUIBKqZifOooclImznovm3X0KQb9hYxtbbd8yn7X3 9Qcw4ME7v+XfJMKXq4FAatruV8/2UrlCirN3f96h2/Ln6PzPO1oQU2Rp3BhpzdqliYuz S3huaXEkypAfb+ATLncdWXflbDwiiTltrRM1xb5rm4Nzqr8YR34lhCErVLlV7wYtR//t 2FVyAbc0OzKjo16gHQbvqGW15je6n8r3m8aBTzrXPFxbc8PCnC9i8JvZLUxADKTKXtGI 0Bhg== X-Gm-Message-State: ACrzQf359XwlN+t8FcAqwZjEv62G9nPSdl4QCEBCOHVH/l2K2XsQW1Bs O3GHojjjCOwqPwjJ6CEk/n163FqqRashgWFvUcxwdlTUJhqEdw== X-Google-Smtp-Source: AMsMyM5W3xcEGTyvXldx/AjRqZ9QFZqLETpM/EipHPKq1/ch4GsRGBPQn3XNq2HWqI8gRb3SIXWTqil8CuFXZBXxTXE= X-Received: by 2002:ac8:5852:0:b0:343:7e74:d83b with SMTP id h18-20020ac85852000000b003437e74d83bmr15789163qth.458.1663606647798; Mon, 19 Sep 2022 09:57:27 -0700 (PDT) MIME-Version: 1.0 References: <20220901062802.2508287-1-hpothula@marvell.com> In-Reply-To: <20220901062802.2508287-1-hpothula@marvell.com> From: Jerin Jacob Date: Mon, 19 Sep 2022 22:27:01 +0530 Message-ID: Subject: Re: [PATCH v1 1/1] net/cnxk: program DF bit appropriately in vector mode To: Hanumanth Pothula Cc: Nithin Dabilpuram , Kiran Kumar K , Sunil Kumar Kori , Satha Rao , dev@dpdk.org, jerinj@marvell.com Content-Type: text/plain; charset="UTF-8" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Thu, Sep 1, 2022 at 11:58 AM Hanumanth Pothula wrote: > > In vector mode, DF bit is not programmed correctly, as the > return value of vsetq_lane_u64() is ignored, which actually > contains the updated value, leading HW to free mbufs though > NIX_TX_OFFLOAD_MBUF_NOFF_F flag is set. > > Hence, save return value of vsetq_lane_u64() appropriately so > that DF bit is programmed correctly. > > Signed-off-by: Hanumanth Pothula Applied to dpdk-next-net-mrvl/for-next-net. Thanks > --- > drivers/net/cnxk/cn10k_tx.h | 8 ++++---- > drivers/net/cnxk/cn9k_tx.h | 8 ++++---- > 2 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/drivers/net/cnxk/cn10k_tx.h b/drivers/net/cnxk/cn10k_tx.h > index ea13866b20..fb33e7150b 100644 > --- a/drivers/net/cnxk/cn10k_tx.h > +++ b/drivers/net/cnxk/cn10k_tx.h > @@ -2477,28 +2477,28 @@ cn10k_nix_xmit_pkts_vector(void *tx_queue, uint64_t *ws, > mbuf3 = (uint64_t *)tx_pkts[3]; > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf0)) > - vsetq_lane_u64(0x80000, xmask01, 0); > + xmask01 = vsetq_lane_u64(0x80000, xmask01, 0); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf0)->pool, > (void **)&mbuf0, 1, 0); > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf1)) > - vsetq_lane_u64(0x80000, xmask01, 1); > + xmask01 = vsetq_lane_u64(0x80000, xmask01, 1); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf1)->pool, > (void **)&mbuf1, 1, 0); > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf2)) > - vsetq_lane_u64(0x80000, xmask23, 0); > + xmask23 = vsetq_lane_u64(0x80000, xmask23, 0); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf2)->pool, > (void **)&mbuf2, 1, 0); > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf3)) > - vsetq_lane_u64(0x80000, xmask23, 1); > + xmask23 = vsetq_lane_u64(0x80000, xmask23, 1); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf3)->pool, > diff --git a/drivers/net/cnxk/cn9k_tx.h b/drivers/net/cnxk/cn9k_tx.h > index 6ce81f5c96..a609814dfb 100644 > --- a/drivers/net/cnxk/cn9k_tx.h > +++ b/drivers/net/cnxk/cn9k_tx.h > @@ -1705,28 +1705,28 @@ cn9k_nix_xmit_pkts_vector(void *tx_queue, struct rte_mbuf **tx_pkts, > mbuf3 = (uint64_t *)tx_pkts[3]; > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf0)) > - vsetq_lane_u64(0x80000, xmask01, 0); > + xmask01 = vsetq_lane_u64(0x80000, xmask01, 0); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf0)->pool, > (void **)&mbuf0, 1, 0); > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf1)) > - vsetq_lane_u64(0x80000, xmask01, 1); > + xmask01 = vsetq_lane_u64(0x80000, xmask01, 1); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf1)->pool, > (void **)&mbuf1, 1, 0); > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf2)) > - vsetq_lane_u64(0x80000, xmask23, 0); > + xmask23 = vsetq_lane_u64(0x80000, xmask23, 0); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf2)->pool, > (void **)&mbuf2, 1, 0); > > if (cnxk_nix_prefree_seg((struct rte_mbuf *)mbuf3)) > - vsetq_lane_u64(0x80000, xmask23, 1); > + xmask23 = vsetq_lane_u64(0x80000, xmask23, 1); > else > RTE_MEMPOOL_CHECK_COOKIES( > ((struct rte_mbuf *)mbuf3)->pool, > -- > 2.25.1 >