[dpdk-dev] [PATCH] examples/l3fwd: fib skip tx queue drain on first iteration
Medvedkin, Vladimir
vladimir.medvedkin at intel.com
Wed Apr 21 17:11:16 CEST 2021
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 at 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 at intel.com>
--
Regards,
Vladimir
More information about the dev
mailing list