diff options
author | Jody McIntyre <scjody@modernduck.com> | 2005-12-13 07:34:32 +0300 |
---|---|---|
committer | Jody McIntyre <scjody@modernduck.com> | 2005-12-13 07:34:32 +0300 |
commit | 525352eb6d355bef6adf597252fc6d04f2dbe66c (patch) | |
tree | 4d2b42372ec0ac985f2775b0ea260c707e93fdd4 /drivers/net/tg3.c | |
parent | d51e86c18a479f1dbcef3aa20e58ad04d1233016 (diff) | |
parent | 0e670506668a43e1355b8f10c33d081a676bd521 (diff) | |
download | linux-525352eb6d355bef6adf597252fc6d04f2dbe66c.tar.xz |
Merge with http://kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'drivers/net/tg3.c')
-rw-r--r-- | drivers/net/tg3.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index 1828a6bf8458..47bd4a394420 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -68,8 +68,8 @@ #define DRV_MODULE_NAME "tg3" #define PFX DRV_MODULE_NAME ": " -#define DRV_MODULE_VERSION "3.43" -#define DRV_MODULE_RELDATE "Oct 24, 2005" +#define DRV_MODULE_VERSION "3.44" +#define DRV_MODULE_RELDATE "Dec 6, 2005" #define TG3_DEF_MAC_MODE 0 #define TG3_DEF_RX_MODE 0 @@ -3565,12 +3565,15 @@ static int tg3_start_xmit(struct sk_buff *skb, struct net_device *dev) if (!spin_trylock(&tp->tx_lock)) return NETDEV_TX_LOCKED; - /* This is a hard error, log it. */ if (unlikely(TX_BUFFS_AVAIL(tp) <= (skb_shinfo(skb)->nr_frags + 1))) { - netif_stop_queue(dev); + if (!netif_queue_stopped(dev)) { + netif_stop_queue(dev); + + /* This is a hard error, log it. */ + printk(KERN_ERR PFX "%s: BUG! Tx Ring full when " + "queue awake!\n", dev->name); + } spin_unlock(&tp->tx_lock); - printk(KERN_ERR PFX "%s: BUG! Tx Ring full when queue awake!\n", - dev->name); return NETDEV_TX_BUSY; } |