diff options
Diffstat (limited to 'drivers/net/ethoc.c')
-rw-r--r-- | drivers/net/ethoc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c index 91a9b1a33764..ceb6a9c357ad 100644 --- a/drivers/net/ethoc.c +++ b/drivers/net/ethoc.c | |||
@@ -811,7 +811,7 @@ static int ethoc_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
811 | 811 | ||
812 | if (unlikely(skb->len > ETHOC_BUFSIZ)) { | 812 | if (unlikely(skb->len > ETHOC_BUFSIZ)) { |
813 | priv->stats.tx_errors++; | 813 | priv->stats.tx_errors++; |
814 | return -EMSGSIZE; | 814 | goto out; |
815 | } | 815 | } |
816 | 816 | ||
817 | entry = priv->cur_tx % priv->num_tx; | 817 | entry = priv->cur_tx % priv->num_tx; |
@@ -840,9 +840,9 @@ static int ethoc_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
840 | } | 840 | } |
841 | 841 | ||
842 | dev->trans_start = jiffies; | 842 | dev->trans_start = jiffies; |
843 | dev_kfree_skb(skb); | ||
844 | |||
845 | spin_unlock_irq(&priv->lock); | 843 | spin_unlock_irq(&priv->lock); |
844 | out: | ||
845 | dev_kfree_skb(skb); | ||
846 | return NETDEV_TX_OK; | 846 | return NETDEV_TX_OK; |
847 | } | 847 | } |
848 | 848 | ||