[dpdk-users] Fails to receive data more than 1500 bytes.

Dharmesh Mehta mehtadharmesh at yahoo.com
Fri Aug 25 02:49:27 CEST 2017


Here is dump of my rx_mode. (i am using dpdk 17.05.1)
vmdq_conf_default.rxmode.mq_mode=4vmdq_conf_default.rxmode.max_rx_pkt_len=9728vmdq_conf_default.rxmode.split_hdr_size=0vmdq_conf_default.rxmode.header_split=0vmdq_conf_default.rxmode.hw_ip_checksum=0vmdq_conf_default.rxmode.hw_vlan_filter=0vmdq_conf_default.rxmode.hw_vlan_strip=1vmdq_conf_default.rxmode.hw_vlan_extend=0vmdq_conf_default.rxmode.jumbo_frame=1vmdq_conf_default.rxmode.hw_strip_crc=1vmdq_conf_default.rxmode.enable_scatter=1vmdq_conf_default.rxmode.enable_lro=0
but still I don't see my code is able to capture packet. TX is fine.
What other area of code I should check?
-DM.


      From: Stephen Hemminger <stephen at networkplumber.org>
 To: Dharmesh Mehta <mehtadharmesh at yahoo.com> 
Cc: Users <users at dpdk.org>
 Sent: Thursday, August 24, 2017 4:18 PM
 Subject: Re: [dpdk-users] Fails to receive data more than 1500 bytes.
   
On Thu, 24 Aug 2017 22:19:27 +0000 (UTC)
Dharmesh Mehta <mehtadharmesh at yahoo.com> wrote:

> Hello,
> I am using Intel i350 NIC card, and I am not able to receive data more than 1500 bytes in a packet. I tried igb_uio as well as uio_pci_generic driver, but both fails.
> If I reduce data <= 1500 bytes than it works, but any thing more than 1500 is not able to receive.
> Do I have to tune any config parameter in order to support more than 1500?
> I tried to set MTU from code using API - rte_eth_dev_set_mtu(port_id, mtu) , but no success.
> 0000:03:00.0 'I350 Gigabit Network Connection 1521' drv=igb_uio unused=vfio-pci,uio_pci_generic0000:03:00.1 'I350 Gigabit Network Connection 1521' drv=uio_pci_generic unused=igb_uio,vfio-pci0000:03:00.2 'I350 Gigabit Network Connection 1521' drv=uio_pci_generic unused=igb_uio,vfio-pci0000:03:00.3 'I350 Gigabit Network Connection 1521' drv=uio_pci_generic unused=igb_uio,vfio-pci
> Thanks in advance.DM.

In order to support >1500 bytes, you need to at least:
    1. set jumbo_frame when setting rxmode
    2. set enable_scatter in rxmode (unless mtu + overhead < pool size)
    3. make sure pool mbuf size > eth->min_rx_buf_size


   


More information about the users mailing list