Hi, Sabu and Bruce:
     I saw your post in the mailing list about I350 fails to send packets, 
however it is posted about one year ago. 

     Now we have encountered the same issue. 
     We are now building a forwarding device which forwards packets between 2 
I350 ports, and we observe that the program will 
transmit a few hundreds of packets then the I350 seems freeze: it fails to send 
all the packets. Sometimes one port and sometimes both ports fail 
to send any packets.

     After some code investigation, we find out that the program fails to send 
packets because there is one packet descriptor?s DD bit is not set by the 
hardware DMA, so the driver thinks that the TX ring is full then it drops all 
the packets. Below is the code (eth_igb_xmit_pkts in igb_rxtx.c) where the 
rte_eth_tx_burst returns:


if (! (txr[tx_end].wb.status & E1000_TXD_STAT_DD)) {
                        if (nb_tx == 0)
                                return (0);
                        goto end_of_tx;
}


We have checked the corresponding sw_ring[tx_end]->mbuf , the packet content 
seems fine, it is a normal 64 bytes packet. Our code is quite simple, just 
adding/removing tunnel tags in the packets. The total length of  packet tags is 
28 bytes. Maybe it is because there is some align requirements on the memory 
addresses where the packet content begins? I do not know. Below is the output 
of l2fwd.

/home/dpdk-1.8.0/examples/l2fwd/build/l2fwd -c 0x6 -n 2 -- -p 0x6

Port statistics ====================================
Statistics for port 1 ------------------------------
Packets sent:              13585277499
Packets received:           6792638878
Packets dropped:                     0
Statistics for port 2 ------------------------------
Packets sent:                      649
Packets received:          13585277549
Packets dropped:            6792638229
Aggregate statistics ===============================
Total packets sent:        13585278180
Total packets received:    20377916457
Total packets dropped:      6792638229
====================================================

     After the card goes freeze, we run the l2fwd and find out that it 
encounters the same issues. The program forward only around 600 packets, then 
it begins to drop all the other packets. We now start to doubt this is a 
problem of the network card, but we are not sure that if it is because the 
hardware has already been messed up, after so many times of restarting the 
programs and testing.  

     Any help is appreciated ! Thanks. 


Reply via email to