When writev fails to send packets it doesn't update the
number of Tx packets, but it still num_tx is updated.

the value that should be returned is the actual number
of sent packets which is num_packets.

Fixes: 02f96a0a ("net/tap: add TUN/TAP device PMD")
CC: sta...@dpdk.org
Signed-off-by: Raslan Darawsheh <rasl...@mellanox.com>
---
 drivers/net/tap/rte_eth_tap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/tap/rte_eth_tap.c b/drivers/net/tap/rte_eth_tap.c
index 83c9288..228add2 100644
--- a/drivers/net/tap/rte_eth_tap.c
+++ b/drivers/net/tap/rte_eth_tap.c
@@ -707,7 +707,7 @@ pmd_tx_burst(void *queue, struct rte_mbuf **bufs, uint16_t 
nb_pkts)
        txq->stats.errs += nb_pkts - num_tx;
        txq->stats.obytes += num_tx_bytes;
 
-       return num_tx;
+       return num_packets;
 }
 
 static const char *
-- 
2.7.4

Reply via email to