All of lore.kernel.org
 help / color / mirror / Atom feed
From: Scott Talbert <swt-HdGmbYkwPlSsTnJN9+BGXg@public.gmane.org>
To: Stephen Hemminger
	<stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
Cc: dev-VfR2kkLFssw@public.gmane.org
Subject: Re: NIC Stops Transmitting
Date: Fri, 26 Jul 2013 16:04:51 -0400 (EDT)	[thread overview]
Message-ID: <alpine.LRH.2.03.1307261601190.21740@techie.net> (raw)
In-Reply-To: <20130726125322.0ecbca48-We1ePj4FEcvRI77zikRAJc56i+j3xesD0e7PPNI6Mm0@public.gmane.org>

On Fri, 26 Jul 2013, Stephen Hemminger wrote:

>> I'm writing an application using DPDK that transmits a large number of
>> packets (it doesn't receive any).  When I transmit at 2 Gb/sec, everything
>> will run fine for several seconds (receiver is receiving at correct rate),
>> but then the NIC appears to get 'stuck' and doesn't transmit any more
>> packets.  In this state, rte_eth_tx_burst() is returning zero (suggesting
>> that there are no available transmit descriptors), but even if I sleep()
>> for a second and try again, rte_eth_tx_burst() still returns 0.  It almost
>> appears as if a packet gets stuck in the transmit ring and keeps
>> everything from flowing.  I'm using an Intel 82599EB NIC.
>>
> Make sure there is enough memory for mbufs.
> Also what is your ring size and transmit free threshold?
> It is easy to instrument the driver to see where it is saying "no space left"
> Also be careful with threshold values, many values of pthresh/hthresh/wthresh
> don't work. I would check the Intel reference manual for your hardware.

Thanks for the tips.  I don't think I'm running out of mbufs, but I'll 
check that again.  I am using these values from one of the examples - 
which claim to be correct for the 82599EB.

/*
  * These default values are optimized for use with the Intel(R) 82599 10 
GbE
  * Controller and the DPDK ixgbe PMD. Consider using other values for 
other
  * network controllers and/or network drivers.
  */
#define TX_PTHRESH 36 /**< Default values of TX prefetch threshold reg. */
#define TX_HTHRESH 0  /**< Default values of TX host threshold reg. */
#define TX_WTHRESH 0  /**< Default values of TX write-back threshold reg. 
*/

static const struct rte_eth_txconf tx_conf = {
     .tx_thresh = {
         .pthresh = TX_PTHRESH,
         .hthresh = TX_HTHRESH,
         .wthresh = TX_WTHRESH,
     },
     .tx_free_thresh = 0, /* Use PMD default values */
     .tx_rs_thresh = 0, /* Use PMD default values */
};

/*
  * Configurable number of RX/TX ring descriptors
  */
#define RTE_TEST_TX_DESC_DEFAULT 512
static uint16_t nb_txd = RTE_TEST_TX_DESC_DEFAULT;

  parent reply	other threads:[~2013-07-26 20:04 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-26 19:39 NIC Stops Transmitting Scott Talbert
     [not found] ` <alpine.LRH.2.03.1307261538440.21740-HdGmbYkwPlSsTnJN9+BGXg@public.gmane.org>
2013-07-26 19:53   ` Stephen Hemminger
     [not found]     ` <20130726125322.0ecbca48-We1ePj4FEcvRI77zikRAJc56i+j3xesD0e7PPNI6Mm0@public.gmane.org>
2013-07-26 20:04       ` Scott Talbert [this message]
     [not found]         ` <alpine.LRH.2.03.1307261601190.21740-HdGmbYkwPlSsTnJN9+BGXg@public.gmane.org>
2013-07-26 22:31           ` jinho hwang
     [not found]             ` <CAPQGAnHkqCHQ9g7OQXF5+w-nho78HdtgCh8YtXumnCz-jzNANg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-07-26 23:26               ` Scott Talbert
     [not found]                 ` <alpine.LRH.2.03.1307261924200.3700-HdGmbYkwPlSsTnJN9+BGXg@public.gmane.org>
2013-07-29 17:02                   ` Scott Talbert
     [not found]                     ` <alpine.LRH.2.03.1307291301430.23215-HdGmbYkwPlSsTnJN9+BGXg@public.gmane.org>
2013-07-31  2:43                       ` miss include file in DPDK 1.3.1r2 Jia.Sui(贾睢)
     [not found]                         ` <581E2E1085FAEF45B48CF8A139824CF804E64C5644-vBGlDtGOlKBBva6MZ6yAsJWt57iikwTfrKKpfKFFTNI@public.gmane.org>
2013-07-31  9:18                           ` [PATCH] mem: fix include in rte_malloc Thomas Monjalon
     [not found]                             ` <1375262325-5348-1-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2013-07-31 11:36                               ` didier.pallard
     [not found]                                 ` <51F8F6D2.8000609-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2013-07-31 11:48                                   ` 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=alpine.LRH.2.03.1307261601190.21740@techie.net \
    --to=swt-hdgmbykwplsstnjn9+bgxg@public.gmane.org \
    --cc=dev-VfR2kkLFssw@public.gmane.org \
    --cc=stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.