aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIra W. Snyder <kernel@irasnyder.com>2006-11-21 20:44:31 -0500
committerDavid S. Miller <davem@davemloft.net>2006-11-21 20:44:31 -0500
commit12862086f24d7382b24379bbcbe0dadf12ca5945 (patch)
treee1fc65a347e23171d28054eeb97316dd255bb97a
parentf2776ff047229c3e7cee2454e2704dd6f98fa32f (diff)
[TG3]: Add missing unlock in tg3_open() error path.
Sparse noticed a locking imbalance in tg3_open(). This patch adds an unlock to one of the error paths, so that tg3_open() always exits without the lock held. Signed-off-by: Ira W. Snyder <kernel@irasnyder.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/tg3.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c
index 1dbdd6bb587b..c20bb998e0e5 100644
--- a/drivers/net/tg3.c
+++ b/drivers/net/tg3.c
@@ -6979,8 +6979,10 @@ static int tg3_open(struct net_device *dev)
6979 tg3_full_lock(tp, 0); 6979 tg3_full_lock(tp, 0);
6980 6980
6981 err = tg3_set_power_state(tp, PCI_D0); 6981 err = tg3_set_power_state(tp, PCI_D0);
6982 if (err) 6982 if (err) {
6983 tg3_full_unlock(tp);
6983 return err; 6984 return err;
6985 }
6984 6986
6985 tg3_disable_ints(tp); 6987 tg3_disable_ints(tp);
6986 tp->tg3_flags &= ~TG3_FLAG_INIT_COMPLETE; 6988 tp->tg3_flags &= ~TG3_FLAG_INIT_COMPLETE;