[dpdk-dev] [PATCH] net/pcap: fix input only Rx

Ferruh Yigit ferruh.yigit at intel.com
Thu Oct 8 13:34:25 CEST 2020


When input only Rx interface argument 'rx_iface_in' provided, current
code assigns 'eth_null_rx' burst function by mistake and no packet
received as a result.
Like in following usage no packets received from physical interface:
"--vdev net_pcap0,rx_iface_in=eth0,tx_iface=eth0"

Fixing the burst function assignment when 'rx_iface_in' argument is used

Fixes: f14a94591504 ("net/pcap: remove Rx queue argument necessity")
Cc: stable at dpdk.org

Reported-by: Muthurajan Jayakumar <muthurajan.jayakumar at intel.com>
Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>
---
Cc: aideen.mcloughlin at intel.com
---
 drivers/net/pcap/rte_eth_pcap.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/pcap/rte_eth_pcap.c b/drivers/net/pcap/rte_eth_pcap.c
index da4988064a..057aa9dbfc 100644
--- a/drivers/net/pcap/rte_eth_pcap.c
+++ b/drivers/net/pcap/rte_eth_pcap.c
@@ -1416,7 +1416,8 @@ pmd_pcap_probe(struct rte_vdev_device *dev)
 	devargs_all.is_rx_pcap =
 		rte_kvargs_count(kvlist, ETH_PCAP_RX_PCAP_ARG) ? 1 : 0;
 	devargs_all.is_rx_iface =
-		rte_kvargs_count(kvlist, ETH_PCAP_RX_IFACE_ARG) ? 1 : 0;
+		(rte_kvargs_count(kvlist, ETH_PCAP_RX_IFACE_ARG) +
+		 rte_kvargs_count(kvlist, ETH_PCAP_RX_IFACE_IN_ARG)) ? 1 : 0;
 	pcaps.num_of_queue = 0;
 
 	devargs_all.is_tx_pcap =
-- 
2.26.2



More information about the dev mailing list