From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 7356FA0547;
	Wed, 21 Apr 2021 17:12:35 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id A878941B5D;
	Wed, 21 Apr 2021 17:12:33 +0200 (CEST)
Received: from mga05.intel.com (mga05.intel.com [192.55.52.43])
 by mails.dpdk.org (Postfix) with ESMTP id 9BA5341B5C
 for <dev@dpdk.org>; Wed, 21 Apr 2021 17:12:30 +0200 (CEST)
IronPort-SDR: JrkJpCAul1oYcHcYtHRmZdacDwVLkpRkCA3v22CVPESs1BzYun9kY63/pDKq+TtUGis8e9QL4V
 6XlGEY8n3+MQ==
X-IronPort-AV: E=McAfee;i="6200,9189,9961"; a="281044585"
X-IronPort-AV: E=Sophos;i="5.82,240,1613462400"; d="scan'208";a="281044585"
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
 by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 21 Apr 2021 08:11:21 -0700
IronPort-SDR: koElw+RMG0ru1/Jj1t3hUeYKUvI729B3hnfBUa+D48/x2VM0qVlWrtMgfacBnKGcr/QFkNda5b
 LFy7HKP5t+jQ==
X-IronPort-AV: E=Sophos;i="5.82,240,1613462400"; d="scan'208";a="524324325"
Received: from vmedvedk-mobl.ger.corp.intel.com (HELO [10.252.19.9])
 ([10.252.19.9])
 by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 21 Apr 2021 08:11:19 -0700
To: Conor Walsh <conor.walsh@intel.com>, thomas@monjalon.net,
 konstantin.ananyev@intel.com, kathleen.capella@arm.com,
 honnappa.nagarahalli@arm.com
Cc: dev@dpdk.org
References: <20210421124842.1550979-1-conor.walsh@intel.com>
From: "Medvedkin, Vladimir" <vladimir.medvedkin@intel.com>
Message-ID: <cc14f4f5-f1e0-f554-1a83-af9e325320be@intel.com>
Date: Wed, 21 Apr 2021 18:11:16 +0300
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.9.1
MIME-Version: 1.0
In-Reply-To: <20210421124842.1550979-1-conor.walsh@intel.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
Subject: Re: [dpdk-dev] [PATCH] examples/l3fwd: fib skip tx queue drain on
 first iteration
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
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>



On 21/04/2021 15:48, Conor Walsh wrote:
> The commit a8f8b672d575 ("examples/l3fwd: skip Tx queue drain on first
> iteration") implemented a change to the em and lpm lookup methods to
> prevent the TX queue drain running in the first iteration of their
> packet processing loops. This patch introduces this change into the
> fib lookup method, this was done to keep the fib code aligned with
> the em and lpm code.
> 
> Signed-off-by: Conor Walsh <conor.walsh@intel.com>
> ---
>   examples/l3fwd/l3fwd_fib.c | 9 +++++----
>   1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/examples/l3fwd/l3fwd_fib.c b/examples/l3fwd/l3fwd_fib.c
> index c7d7689a94..1787229942 100644
> --- a/examples/l3fwd/l3fwd_fib.c
> +++ b/examples/l3fwd/l3fwd_fib.c
> @@ -179,8 +179,6 @@ fib_main_loop(__rte_unused void *dummy)
>   	const uint64_t drain_tsc = (rte_get_tsc_hz() + US_PER_S - 1) /
>   			US_PER_S * BURST_TX_DRAIN_US;
>   
> -	prev_tsc = 0;
> -
>   	lcore_id = rte_lcore_id();
>   	qconf = &lcore_conf[lcore_id];
>   
> @@ -200,9 +198,10 @@ fib_main_loop(__rte_unused void *dummy)
>   				lcore_id, portid, queueid);
>   	}
>   
> -	while (!force_quit) {
> +	cur_tsc = rte_rdtsc();
> +	prev_tsc = cur_tsc;
>   
> -		cur_tsc = rte_rdtsc();
> +	while (!force_quit) {
>   
>   		/* TX burst queue drain. */
>   		diff_tsc = cur_tsc - prev_tsc;
> @@ -233,6 +232,8 @@ fib_main_loop(__rte_unused void *dummy)
>   			/* Use fib to lookup port IDs and transmit them. */
>   			fib_send_packets(nb_rx, pkts_burst,	portid, qconf);
>   		}
> +
> +		cur_tsc = rte_rdtsc();
>   	}
>   
>   	return 0;
> 

Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>

-- 
Regards,
Vladimir