[dpdk-users] RSS problems with Intel XL710 NIC (i40e)

Xiao Kong kongxiao0532 at gmail.com
Wed Oct 17 15:09:18 CEST 2018

Dear all,

We are currently trying to build a multi-RX-queue dpdk program, using 
RSS to split the incoming traffic evenly into RX queues on a single 
port. It works fine when we use an Intel 82599ES 10Gig NIC. However when 
we switch to the Intel XL710 40Gig NIC (i40e), RSS does not seem to 
work. As a result, TCP packets belonging to various flows (with 
different src&dst IPs, ports) are all sent into the same RX queue. Below 
is our code.

static const struct rte_eth_conf port_conf_default = {
     .rxmode = {
         .max_rx_pkt_len = ETHER_MAX_LEN, //1518
         .mq_mode = ETH_MQ_RX_RSS,
     .rx_adv_conf = {
         .rss_conf = {
             .rss_key = NULL,
             .rss_hf = ETH_RSS_IP | ETH_RSS_UDP | ETH_RSS_TCP | 

We noticed that it is mentioned on several pages that XL710 sometimes 
behaves quite differently from other NICs, but we just can't find a way 
to configurate RSS hash fields on our card. Another thing is when we 
tried to enable RSS or setup hash fields in testpmd, it showed error 
messages as follows.

testpmd> port config all rss all
Configuration of RSS hash at ethernet port 0 failed with error (22): 
Invalid argument.
Configuration of RSS hash at ethernet port 1 failed with error (22): 
Invalid argument.

testpmd> show port 1 rss-hash ipv4
RSS disabled

I am wondering if there is any mistake we made or if there is a unique 
method for XL710 to configure RSS hash fields.

By the way, we are using DPDK ver. 17.08.



Best Regards,


More information about the users mailing list