Hello, I have a standalone utility that implements ICMP ping over DPDK. When I run the utility with i40e PMD over VF it stacks with the following output and never recovers. The last reported tx_tail value was 4095. TX queue length in that run was 4096 The fault was reproduced on several Dell PowerEdge R630 servers
My environment: DPDK 16.11 + 6809e62e555c7b36d248a0e8086e3c3bbbb87a37 (net/i40e: enable VF MTU change) i40e: version: 1.5.25, firmware-version: 5.04 0x80002537 0.0.0 Regards, Gregory PMD: i40e_xmit_pkts(): port_id=0 queue_id=0 tx_tail=4094 nb_tx=1 PMD: i40e_rxd_to_vlan_tci(): Mbuf vlan_tci: 0, vlan_tci_outer: 0 PMD: i40e_rxd_to_vlan_tci(): Mbuf vlan_tci: 0, vlan_tci_outer: 0 PMD: i40e_rxd_to_vlan_tci(): Mbuf vlan_tci: 0, vlan_tci_outer: 0 IN[0] ETH[00:50:56:88:A4:F9->46:51:31:29:89:82 proto 0800] IP[10.222.35.7->10.222.131.1 len 498 proto 01] ICMP[REPLY seq 4090] IN[0] ETH[00:50:56:88:A4:F9->46:51:31:29:89:82 proto 0800] IP[10.222.35.7->10.222.131.1 len 498 proto 01] ICMP[REPLY seq 4091] IN[0] ETH[00:50:56:88:A4:F9->46:51:31:29:89:82 proto 0800] IP[10.222.35.7->10.222.131.1 len 498 proto 01] ICMP[REPLY seq 4092] OUT[0] ETH[46:51:31:29:89:82->00:50:56:88:A4:F9 proto 0800] IP[10.222.131.1->10.222.35.7 len 498 proto 01] ICMP[REQUEST seq 4093] PMD: i40e_xmit_cleanup(): TX descriptor 31 is not done (port=0 queue=0) PMD: i40e_xmit_pkts(): mbuf: 0x7efebc07c500, TDD[4094]: buf_dma_addr: 0x81de7c600; td_cmd: 0x4; td_offset: 0; td_len: 512; td_tag: 0; PMD: i40e_xmit_pkts(): port_id=0 queue_id=0 tx_tail=4095 nb_tx=1 PMD: i40e_rxd_to_vlan_tci(): Mbuf vlan_tci: 0, vlan_tci_outer: 0 IN[0] ETH[00:50:56:88:A4:F9->46:51:31:29:89:82 proto 0800] IP[10.222.35.7->10.222.131.1 len 498 proto 01] ICMP[REPLY seq 4093] OUT[0] ETH[46:51:31:29:89:82->00:50:56:88:A4:F9 proto 0800] IP[10.222.131.1->10.222.35.7 len 498 proto 01] ICMP[REQUEST seq 4094] PMD: i40e_xmit_cleanup(): TX descriptor 31 is not done (port=0 queue=0) PMD: i40e_xmit_cleanup(): TX descriptor 31 is not done (port=0 queue=0) PMD: i40e_xmit_cleanup(): TX descriptor 31 is not done (port=0 queue=0)