From: Zhang Changzhong Date: Fri, 21 Oct 2022 01:32:24 +0000 (+0800) Subject: net: lantiq_etop: don't free skb when returning NETDEV_TX_BUSY X-Git-Tag: baikal/aarch64/sdk6.1~2767^2~4 X-Git-Url: https://git.baikalelectronics.ru/?a=commitdiff_plain;h=fd67ec2c0b492ad9f0a44ac4fdb2776c8eff114d;p=kernel.git net: lantiq_etop: don't free skb when returning NETDEV_TX_BUSY The ndo_start_xmit() method must not free skb when returning NETDEV_TX_BUSY, since caller is going to requeue freed skb. Fixes: 8bac39e93a5a ("MIPS: Lantiq: Add ethernet driver") Signed-off-by: Zhang Changzhong Signed-off-by: David S. Miller --- diff --git a/drivers/net/ethernet/lantiq_etop.c b/drivers/net/ethernet/lantiq_etop.c index 59aab4086dcce..f5961bdcc4809 100644 --- a/drivers/net/ethernet/lantiq_etop.c +++ b/drivers/net/ethernet/lantiq_etop.c @@ -485,7 +485,6 @@ ltq_etop_tx(struct sk_buff *skb, struct net_device *dev) len = skb->len < ETH_ZLEN ? ETH_ZLEN : skb->len; if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) || ch->skb[ch->dma.desc]) { - dev_kfree_skb_any(skb); netdev_err(dev, "tx ring full\n"); netif_tx_stop_queue(txq); return NETDEV_TX_BUSY;