aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVitaly Bordug2007-09-18 20:05:27 +0400
committerDavid S. Miller2007-10-10 16:51:54 -0700
commitaa90f5032129b43569896c1c6c15a706c02c6abf (patch)
tree88c48fbe941472e3a72de64c2db6a10b04af4661
parent1a9e8549efda23a08451d0ac582713dfd04f0951 (diff)
FS_ENET: TX stuff should use fep->tx_lock, instead of fep->lock.
Signed-off-by: Vitaly Bordug <vitb@kernel.crashing.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/net/fs_enet/fs_enet-main.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/fs_enet/fs_enet-main.c b/drivers/net/fs_enet/fs_enet-main.c
index f9079599dd22..83c9bf27ecfd 100644
--- a/drivers/net/fs_enet/fs_enet-main.c
+++ b/drivers/net/fs_enet/fs_enet-main.c
@@ -335,7 +335,7 @@ static void fs_enet_tx(struct net_device *dev)
int dirtyidx, do_wake, do_restart;
u16 sc;
- spin_lock(&fep->lock);
+ spin_lock(&fep->tx_lock);
bdp = fep->dirty_tx;
do_wake = do_restart = 0;
@@ -415,7 +415,7 @@ static void fs_enet_tx(struct net_device *dev)
if (do_restart)
(*fep->ops->tx_restart)(dev);
- spin_unlock(&fep->lock);
+ spin_unlock(&fep->tx_lock);
if (do_wake)
netif_wake_queue(dev);
@@ -818,7 +818,9 @@ static int fs_enet_close(struct net_device *dev)
phy_stop(fep->phydev);
spin_lock_irqsave(&fep->lock, flags);
+ spin_lock(&fep->tx_lock);
(*fep->ops->stop)(dev);
+ spin_unlock(&fep->tx_lock);
spin_unlock_irqrestore(&fep->lock, flags);
/* release any irqs */