Subject: net: fix network drivers ndo_start_xmit() return values (part 7)

From: Patrick McHardy <[email-masked]>
Date: Fri, 12 Jun 2009 17:34:37 +0200

commit 356695e6aa6fa75b4f48b05d22dcad264603abe4
Author: Patrick McHardy <[email-masked]>
Date:   Fri Jun 12 17:32:06 2009 +0200

    net: fix network drivers ndo_start_xmit() return values (part 7)
    
    Fix up ATM drivers that return an errno value to qdisc_restart(), causing
    qdisc_restart() to print a warning an requeue/retransmit the skb.
    
    - lec: condition can only be remedied by userspace, until that retransmissions
    
    Compile tested only.
    
    Signed-off-by: Patrick McHardy <[email-masked]>

diff --git a/net/atm/lec.c b/net/atm/lec.c
index 199b6bb..b499af4 100644
--- a/net/atm/lec.c
+++ b/net/atm/lec.c
@@ -271,7 +271,8 @@ static int lec_start_xmit(struct sk_buff *skb, struct net_device *dev)
 		printk("%s:No lecd attached\n", dev->name);
 		dev->stats.tx_errors++;
 		netif_stop_queue(dev);
-		return -EUNATCH;
+		kfree_skb(skb);
+		return NETDEV_TX_OK;
 	}
 
 	pr_debug("skbuff head:%lx data:%lx tail:%lx end:%lx\n",