DPDK patches and discussions
 help / color / mirror / Atom feed
From: James Poole <james.g.poole@intel.com>
To: dev@dpdk.org
Cc: pablo.de.lara.guarch@intel.com, James Poole <james.g.poole@intel.com>
Subject: [dpdk-dev] [PATCH] app/testpmd: fix timeout in Rx queue flushing
Date: Thu,  8 Sep 2016 10:49:16 +0100	[thread overview]
Message-ID: <1473328156-32488-1-git-send-email-james.g.poole@intel.com> (raw)

When testpmd is run, the application would hang on the second time
that "start" is executed. This is because the timer limit would get
multiplied to an unreachably high number.

At the start of flush_fwd_rx_queues(), the timer limit now resets
to stop it from getting to this high number.

The timer has been made local for this function.

Fixes: f487715f36f5 ("app/testpmd: add timeout in Rx queue flushing")

Signed-off-by: James Poole <james.g.poole@intel.com>
---
 app/test-pmd/testpmd.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 1428974..33a1403 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -272,9 +272,6 @@ uint32_t bypass_timeout = RTE_BYPASS_TMT_OFF;
 
 #endif
 
-/* default period is 1 second */
-static uint64_t timer_period = 1;
-
 /*
  * Ethernet device configuration.
  */
@@ -881,9 +878,10 @@ flush_fwd_rx_queues(void)
 	uint16_t  i;
 	uint8_t   j;
 	uint64_t prev_tsc = 0, diff_tsc, cur_tsc, timer_tsc = 0;
+	uint64_t timer_period;
 
 	/* convert to number of cycles */
-	timer_period *= rte_get_timer_hz();
+	timer_period = rte_get_timer_hz(); /* 1 second timeout */
 
 	for (j = 0; j < 2; j++) {
 		for (rxp = 0; rxp < cur_fwd_config.nb_fwd_ports; rxp++) {
-- 
2.5.5

             reply	other threads:[~2016-09-08 16:48 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-08  9:49 James Poole [this message]
2016-09-13 16:04 ` Ferruh Yigit
2016-09-23 18:20   ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1473328156-32488-1-git-send-email-james.g.poole@intel.com \
    --to=james.g.poole@intel.com \
    --cc=dev@dpdk.org \
    --cc=pablo.de.lara.guarch@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).