]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/net/ethoc.c
igb: move all multicast addresses into multicast table array
[mv-sheeva.git] / drivers / net / ethoc.c
index 91a9b1a3376407a91c26998a59ede7ea55154fdf..ceb6a9c357adad46d6ba2c897e6da96b909720d6 100644 (file)
@@ -811,7 +811,7 @@ static int ethoc_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        if (unlikely(skb->len > ETHOC_BUFSIZ)) {
                priv->stats.tx_errors++;
-               return -EMSGSIZE;
+               goto out;
        }
 
        entry = priv->cur_tx % priv->num_tx;
@@ -840,9 +840,9 @@ static int ethoc_start_xmit(struct sk_buff *skb, struct net_device *dev)
        }
 
        dev->trans_start = jiffies;
-       dev_kfree_skb(skb);
-
        spin_unlock_irq(&priv->lock);
+out:
+       dev_kfree_skb(skb);
        return NETDEV_TX_OK;
 }