From 3080603927fb7b6986122bdaaec1a689d5aa4a61 Mon Sep 17 00:00:00 2001 From: Gerrit Renker Date: Sat, 17 May 2008 08:35:36 +0100 Subject: [PATCH] --- yaml --- r: 97353 b: refs/heads/master c: 5a0a92e67b5009a71e011658da04fb92dad8961f h: refs/heads/master i: 97351: 3138f445c4b7cc6dfa40c86dbceb50542e2f765d v: v3 --- [refs] | 2 +- trunk/drivers/net/sc92031.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index d17bd44b4876..499c14c6edb9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 789585e968f07653a29a9e829aed20386043636c +refs/heads/master: 5a0a92e67b5009a71e011658da04fb92dad8961f diff --git a/trunk/drivers/net/sc92031.c b/trunk/drivers/net/sc92031.c index f64a860029b7..b4b63805ee8f 100644 --- a/trunk/drivers/net/sc92031.c +++ b/trunk/drivers/net/sc92031.c @@ -953,9 +953,6 @@ static int sc92031_start_xmit(struct sk_buff *skb, struct net_device *dev) unsigned entry; u32 tx_status; - if (skb_padto(skb, ETH_ZLEN)) - return NETDEV_TX_OK; - if (unlikely(skb->len > TX_BUF_SIZE)) { dev->stats.tx_dropped++; goto out; @@ -975,6 +972,11 @@ static int sc92031_start_xmit(struct sk_buff *skb, struct net_device *dev) skb_copy_and_csum_dev(skb, priv->tx_bufs + entry * TX_BUF_SIZE); len = skb->len; + if (unlikely(len < ETH_ZLEN)) { + memset(priv->tx_bufs + entry * TX_BUF_SIZE + len, + 0, ETH_ZLEN - len); + len = ETH_ZLEN; + } wmb();