Hello, To introduce myself, I am working on a slightly enhanced version of l3fwd which support some more features like dynamically adding new routes in a lpm table, adding some acls, rate-limiting per dest, a command line through unixsock etc. We hope to open source it as soon as it is shiny enough.
Here is my problem, when I'm trying to use more than 1 rx_queue using the i40e driver I'm not receiving any packet, the rx_status in i40e_rx_scan_hw_ring is always 0 on all queues. Note that the code is working with more than 1 queue with an ixgbe card. Some details: -We are using the same rte_eth_conf as the one in l3fwd, and we have tested with both ETH_RSS_IP and ETH_RSS_PROTO_MASK. -The queues setup is the same as in l3fwd. -When I'm dumping the reta table I have my hash indexes are pointing to queue 0 and 1. -The rxq->queue_id in i40e_rx_scan_hw_ring (and in rte_eth_rx_burst) is a mix of queue 0 and queue 1. -The rss configuration taken from rte_eth_dev_rss_hash_conf_get seems ok. -We have flashed both card to the latest version (f4.33 a1.2 n04.42 e80001930) -We have tested with dpdk2.0.0 and with the current HEAD. I saw the mail "i40e and RSS woes", so I tried to set another rss_key after the init but it doesn't help. I also tried to modify the reta table but it doesn't help also. I am a little bit out of new ideas to solve it, if its not to try to downgrade the firmware version. Anyone have a suggestion ? I will continue my dev using a ixgbe card, but making it work with i40e too (with more than 1 rx_queue) would be really pleasing. -- Nikita