Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tulip: fix hang in dmfe driver on sending of big packet

This patch fixes hang in dmfe driver on attempt of sending a big packet.
Without this patch the code stops the queue and never wakes it again.

Signed-off-by: Alexander V. Lukyanov <lav@netis.ru>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Alexander V. Lukyanov and committed by
David S. Miller
e7dfc8db f8e96161

+3 -3
+3 -3
drivers/net/tulip/dmfe.c
··· 688 688 689 689 DMFE_DBUG(0, "dmfe_start_xmit", 0); 690 690 691 - /* Resource flag check */ 692 - netif_stop_queue(dev); 693 - 694 691 /* Too large packet check */ 695 692 if (skb->len > MAX_PACKET_SIZE) { 696 693 pr_err("big packet = %d\n", (u16)skb->len); 697 694 dev_kfree_skb(skb); 698 695 return NETDEV_TX_OK; 699 696 } 697 + 698 + /* Resource flag check */ 699 + netif_stop_queue(dev); 700 700 701 701 spin_lock_irqsave(&db->lock, flags); 702 702