[PATCH 4.14 30/69] nfp: validate the return code from dev_queue_xmit()

From: Greg Kroah-Hartman
Date: Mon Apr 15 2019 - 15:03:24 EST


From: Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx>

[ Upstream commit c8ba5b91a04e3e2643e48501c114108802f21cda ]

dev_queue_xmit() may return error codes as well as netdev_tx_t,
and it always consumes the skb. Make sure we always return a
correct netdev_tx_t value.

Fixes: eadfa4c3be99 ("nfp: add stats and xmit helpers for representors")
Signed-off-by: Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx>
Reviewed-by: John Hurley <john.hurley@xxxxxxxxxxxxx>
Reviewed-by: Simon Horman <simon.horman@xxxxxxxxxxxxx>
Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
drivers/net/ethernet/netronome/nfp/nfp_net_repr.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/net/ethernet/netronome/nfp/nfp_net_repr.c
+++ b/drivers/net/ethernet/netronome/nfp/nfp_net_repr.c
@@ -200,7 +200,7 @@ static netdev_tx_t nfp_repr_xmit(struct
ret = dev_queue_xmit(skb);
nfp_repr_inc_tx_stats(netdev, len, ret);

- return ret;
+ return NETDEV_TX_OK;
}

static int nfp_repr_stop(struct net_device *netdev)