From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 200F5A0A02; Wed, 24 Mar 2021 10:18:30 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id ADA574067B; Wed, 24 Mar 2021 10:18:29 +0100 (CET) Received: from mail-il1-f181.google.com (mail-il1-f181.google.com [209.85.166.181]) by mails.dpdk.org (Postfix) with ESMTP id 1FF324014F for ; Wed, 24 Mar 2021 10:18:29 +0100 (CET) Received: by mail-il1-f181.google.com with SMTP id v3so20741287ilj.12 for ; Wed, 24 Mar 2021 02:18:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=bkwr48ZeSYkF49YmMA1b4An/p0EcPPZWSQhkgl6gTS8=; b=jooRAmuNjVjRbbrSt9pUDmWp2sKPiEY+WAqZALywR1OStZFcTbU/i/B8oUWzM+EmvL XJ1AmoQiWRTYkyg4RxgILo/pDE7tD1fHyGwpdHylyrHloQ3iiL40P4jTt93+UtG04D1Q /3DWKOZ6c/5ykkZ8q7zsgfONyIp5iMe6lk3sGjDu7EuU2Zp/s6DzhEEx8jeCN5saNkM+ PJwytkh4xKsS3Rdn5PlMQHRcWVAd0ylySXrwITSD4Eahnou2B4Xo6aokpQHlmpwe3GW5 uuBd/JEtfNxHu8elAibBekUZ9pTdwq1GmYd+2e/r9RV7saeBZMMXFjnrAZA1BOidsdf8 XtRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=bkwr48ZeSYkF49YmMA1b4An/p0EcPPZWSQhkgl6gTS8=; b=az3Ee9FMDbOLBZGFtygSMSbl/Z6DCZNY9xssL6UYROmFRN+evWGfPP1WGeTiinXMFc K1Vwj77sWVt/S1nsd/NWdd/NQEZV5IeUdhqywvxFCghJUs/q03D68yKzF53jhWi61xA/ q/3YQbzc11i9Oyew47hDkjY3GtM+ODlJsgn9ljkqFzENs/um0ZJLsn6cxa7hCpc23KUa D1j3Z0dThd/c+23ctHq+o29TEWjicN9Z7My9SML+fvoGwL+jHBZl5dlD0lOLsk9ttCd6 nBFSwj2CHZK9r/2djAeY6FRfi3MBkP9VoUaCoBwPw5K23z5AzyahJ3mC5Kc5YokPjQYl 1j0A== X-Gm-Message-State: AOAM530p/fpijNK8HD1C857Gkd8Yu/sqLP4UklJD/vfUXl+I/XOkRyaN 8YnHfDGGkKT47uQNTID71X2QVMaHpDq2e6ATXd8= X-Google-Smtp-Source: ABdhPJwVtL4yfJzWaMFlLpaEW8rZgZdbj/ht9+cvni5lIzPkVm7+lMzweacOYcCslaj5y/HYMgiMz1yWJEJc7qcQAPg= X-Received: by 2002:a05:6e02:198e:: with SMTP id g14mr1720424ilf.271.1616577508492; Wed, 24 Mar 2021 02:18:28 -0700 (PDT) MIME-Version: 1.0 References: <5df2a5e4-972e-499c-7f23-12cf191d00fd@marvell.com> In-Reply-To: <5df2a5e4-972e-499c-7f23-12cf191d00fd@marvell.com> From: Jerin Jacob Date: Wed, 24 Mar 2021 14:48:10 +0530 Message-ID: To: Igor Russkikh Cc: Balazs Nemeth , dpdk-dev , Devendra Singh Rawat , Rasesh Mody Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [EXT] [PATCH 0/8] Optimize qede use of rx/tx_entries 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 Sender: "dev" On Mon, Mar 22, 2021 at 10:38 PM Igor Russkikh wrote: > > > > On 3/5/2021 2:13 PM, Balazs Nemeth wrote: > > External Email > > > > ---------------------------------------------------------------------- > > This patch set optimizes qede_{rx,tx}_entry and introduces > > rte_pktmbuf_free_bulk in qede_process_tx_compl. The overall performance > > improvement depends on the use-case; in a physical-virtual-physical test > > on a ThunderX2 99xx system with two SMT threads used in ovs, > > and two cores used in a vm, an improvement of around 2.55% is observed > > due to this patch set. > > > > Balazs Nemeth (8): > > net/qede: remove flags from qede_tx_entry and simplify to rte_mbuf > > net/qede: avoid repeatedly calling ecore_chain_get_cons_idx > > net/qede: assume txq->sw_tx_ring[idx] is never null in > > qede_free_tx_pkt > > net/qede: inline qede_free_tx_pkt to prepare for rte_pktmbuf_free_bulk > > net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free > > net/qede: prefetch txq->hw_cons_ptr > > net/qede: prefetch next packet to free > > net/qede: remove page_offset from struct qede_rx_entry and simplify > > > > drivers/net/qede/qede_rxtx.c | 148 +++++++++++++++++++---------------- > > drivers/net/qede/qede_rxtx.h | 21 +---- > > 2 files changed, 81 insertions(+), 88 deletions(-) > > Series reviewed, for the series > > Acked-by: Igor Russkikh > > One checkpatch warn I see in patchwork output, probably worth fixing: > > ERROR:POINTER_LOCATION: "(foo**)" should be "(foo **)" > #120: FILE: drivers/net/qede/qede_rxtx.c:56: > + ret = rte_mempool_get_bulk(rxq->mb_pool, (void**)&rxq->sw_rx_ring[idx], count); Hi @Balazs Nemeth Please fix the following checkpatc.shh and check-git-log.sh issues and add Igor reviewed by in next version. I will merge the next version with the fixes. Updaed this series status in the patchwork as "Changes requested" Wrong headline format: net/qede: remove flags from qede_tx_entry and simplify to rte_mbuf net/qede: avoid repeatedly calling ecore_chain_get_cons_idx net/qede: assume txq->sw_tx_ring[idx] is never null in qede_free_tx_pkt net/qede: inline qede_free_tx_pkt to prepare for rte_pktmbuf_free_bulk net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free net/qede: prefetch txq->hw_cons_ptr net/qede: remove page_offset from struct qede_rx_entry and simplify Headline too long: net/qede: remove flags from qede_tx_entry and simplify to rte_mbuf net/qede: assume txq->sw_tx_ring[idx] is never null in qede_free_tx_pkt net/qede: inline qede_free_tx_pkt to prepare for rte_pktmbuf_free_bulk net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free net/qede: remove page_offset from struct qede_rx_entry and simplify Invalid patch(es) found - checked 8 patches check-git-log failed ### net/qede: remove flags from qede_tx_entry and simplify to rte_mbuf WARNING:LONG_LINE: line length of 89 exceeds 80 columns #37: FILE: drivers/net/qede/qede_rxtx.c:429: + (sizeof(txq->sw_tx_ring) * txq->nb_tx_desc), total: 0 errors, 1 warnings, 0 checks, 87 lines checked ### net/qede: avoid repeatedly calling ecore_chain_get_cons_idx WARNING:BRACES: braces {} are not necessary for single statement blocks #82: FILE: drivers/net/qede/qede_rxtx.c:934: + while (remaining) { + remaining -= qede_free_tx_pkt(txq); + } total: 0 errors, 1 warnings, 0 checks, 67 lines checked ### net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free WARNING:LONG_LINE: line length of 89 exceeds 80 columns #48: FILE: drivers/net/qede/qede_rxtx.c:930: + rte_pktmbuf_free_bulk(&txq->sw_tx_ring[first_idx], mask - first_idx + 1); WARNING:LONG_LINE: line length of 84 exceeds 80 columns #51: FILE: drivers/net/qede/qede_rxtx.c:933: + rte_pktmbuf_free_bulk(&txq->sw_tx_ring[first_idx], idx - first_idx); total: 0 errors, 2 warnings, 0 checks, 32 lines checked ### net/qede: prefetch next packet to free WARNING:REPEATED_WORD: Possible repeated word: 'next' #6: While handling the current mbuf, pull the next next mbuf into the cache. WARNING:BLOCK_COMMENT_STYLE: Block comments use * on subsequent lines #21: FILE: drivers/net/qede/qede_rxtx.c:919: + /* Prefetch the next mbuf. Note that at least the last 4 mbufs + that are prefetched will not be used in the current call. */ WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line #21: FILE: drivers/net/qede/qede_rxtx.c:919: + that are prefetched will not be used in the current call. */ total: 0 errors, 3 warnings, 0 checks, 11 lines checked ### net/qede: remove page_offset from struct qede_rx_entry and simplify WARNING:LONG_LINE: line length of 87 exceeds 80 columns #49: FILE: drivers/net/qede/qede_rxtx.c:56: + ret = rte_mempool_get_bulk(rxq->mb_pool, (void**)&rxq->sw_rx_ring[idx], count); ERROR:POINTER_LOCATION: "(foo**)" should be "(foo **)" #49: FILE: drivers/net/qede/qede_rxtx.c:56: + ret = rte_mempool_get_bulk(rxq->mb_pool, (void**)&rxq->sw_rx_ring[idx], count); total: 1 errors, 1 warnings, 0 checks, 174 lines checked > > Thanks > Igor