DPDK patches and discussions
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: "Yeddula, Avinash" <ayeddula@ciena.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] Issue with TX of Jumbo frames on 10G interfaces ONLY
Date: Mon, 24 Jul 2017 14:14:10 +0100	[thread overview]
Message-ID: <20170724131410.GA2848@bricha3-MOBL3.ger.corp.intel.com> (raw)
In-Reply-To: <BN6PR04MB05948EAA414C076BAD183E6AD0AD0@BN6PR04MB0594.namprd04.prod.outlook.com>

On Fri, Jul 14, 2017 at 05:38:45AM +0000, Yeddula, Avinash wrote:
> Hi All,
> 
> In order to support Jumbo frames for our application, I made the below
> changes. The intention, here is to use "linked-mbufs instead of using
> 1 single 9k MBUF".
> 
> With the below changes, I'm able to send/receive  9k size frames on 1G
> interfaces successfully.  No issues what so ever with  1G interfaces.
> But, when it comes to 10G interfaces, I confirmed my app writes a
> jumbo frame on to the port  "rte_eth_tx_burst", but that frame "never"
> showed up on the  other end, it got lost somewhere inside  this API
> "rte_eth_tx_burst" .
> 
> I do not see any type of "tx" stats ticked. Thought will check with
> the you folks, before I dig inside "rte_eth_tx_burst" API.  Is there
> any configs I'm missing for TX port, please comment ?
> 
> This is the driver I use for "net_ixgbe" for my 10G interface.
> 
>       // local port config structure for initialization, code below
>       may modify struct rte_eth_conf port_conf = { .rxmode = {
>       .split_hdr_size = 0, .header_split   = 0,           /**< Header
>       Split disabled */ .hw_ip_checksum = 0,           /**< IP
>       checksum offload disabled */ .hw_vlan_filter = 0,           /**<
>       VLAN filtering disabled */ .jumbo_frame    = 1,           /**<
>       Jumbo Frame Support always enabled */ .max_rx_pkt_len = 9216,
>       /**< If jumbo_frame is enabled then max_rx_pkt_len must be set
>       */ .hw_strip_crc   = 0,           /**< CRC stripped by hardware
>       */ }, .txmode = { .mq_mode = ETH_MQ_TX_NONE, }, .intr_conf.lsc =
>       0, };
> 
> 
>       port_conf.rxmode.enable_scatter = 1;
>       port_conf.rxmode.hw_ip_checksum = 0;
> 
> 
When creating the TX queue itself via "rte_eth_tx_queue_setup()", ensure
the txq_flags field in the conf structure is set to zero. By default in
many drivers, the transmission of jumbo frames via multiple buffers is
disabled for performance reasons.

/Bruce

  reply	other threads:[~2017-07-24 13:14 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-14  5:38 Yeddula, Avinash
2017-07-24 13:14 ` Bruce Richardson [this message]
2017-07-24 16:16   ` Yeddula, Avinash

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=20170724131410.GA2848@bricha3-MOBL3.ger.corp.intel.com \
    --to=bruce.richardson@intel.com \
    --cc=ayeddula@ciena.com \
    --cc=dev@dpdk.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 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).