On 6/5/2018 6:10 PM, Ido Goshen wrote:
> The problem is if a dpdk app uses the same iface(s) both as rx_iface and 
> tx_iface then it will receive back the packets it sends.
> If my app sends a packet to portid=X with rte_eth_tx_burst() then I wouldn't 
> expect to receive it back by rte_eth_rx_burst() for that same portid=X  
> (assuming of course there's no external loopback)
> This is coming from the default nature of pcap that like a sniffer captures 
> both incoming and outgoing direction.
> The patch provides an option to limit pcap rx_iface to get only incoming 
> traffic which is more like a real (non-pcap) dpdk device.
> 
> for example:
> when using existing *rx_iface*
>       l2fwd -c 3 -n1 --no-huge --vdev=eth_pcap0,rx_iface=eth1,tx_iface=eth1 
> --vdev=eth_pcap1,rx_iface=dummy0,tx_iface=dummy0  -- -p 3 -T 1 
> sending only 1 single packet into eth1 will end in an infinite loop - 

If you are using same interface for both Rx & Tx, why not using "iface=xxx"
argument, can you please test with following:

l2fwd -c 3 -n1 --no-huge --vdev=eth_pcap0,iface=eth1
--vdev=eth_pcap1,iface=dummy0 -- -p 3 -T 1


I can't reproduce the issue with above command.

Thanks,
ferruh

Reply via email to