max_rx_pkt_len issues with i40e dpdk SRIOV driver net_i40e_vf.
https://bugs.dpdk.org/show_bug.cgi?id=296
Bug ID: 296
Summary: max_rx_pkt_len issues with i40e dpdk SRIOV driver
net_i40e_vf.
Product: DPDK
Version: 18.02
Hardware: x86
OS: All
Status: CONFIRMED
Severity: major
Priority: Normal
Component: ethdev
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected] Target Milestone: ---
CC: [email protected]
When deployed an SRIOV setup with Intel® Ethernet 700 Series 40GB NIC, we noticed the traffic with default mtu (1500) is not working. The maximum MSS which was worked is 1456 ( instead of the default value 1460).
On debugging, it is found that the driver is actually setting the dev_data->dev_conf.rxmode.max_rx_pkt_len to 1518(ETHER_MAX_LEN) which is wrong.
The max len is not including the vlan tag len( also not including QinQ). The ETH Overhead is defined as below
#define I40E_ETH_OVERHEAD \
(ETHER_HDR_LEN + ETHER_CRC_LEN + I40E_VLAN_TAG_SIZE * 2) which is equal to 26
So for supporting an MTU size of 1500, the max_rx_pkt_len should be 1526 instead of 1518.
The i40evf_dev_mtu_set API also wrongly checking the framesize against ETHER_MAX_LEN(1518) to set the jumbo_frame mode.
The attached patch resolved the issue for our testing. Please verify and fix the issue.
Thanks and Regards,
Lava
--- Comment #1 from Xiao Zhang ([email protected]) --- Hi Lava,
I did not see the patch, can you upstream your patch to the community?
Thanks,
Xiao
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.