summaryrefslogtreecommitdiffstats
path: root/drivers/net/cassini.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-12-04 16:22:32 +0100
committerTakashi Iwai <tiwai@suse.de>2009-12-04 16:22:32 +0100
commit79598324838a25cc378ecbb8c29dd1e3d3951d35 (patch)
tree7d29e81580cba854042df4e33bdc8f38bbd65d03 /drivers/net/cassini.c
parent8ee763b9c82c6ca0a59a7271ce4fa29d7baf5c09 (diff)
parentb00615d163cd24fa98d155acfc1f9d81d6fe1103 (diff)
downloadkernel-crypto-79598324838a25cc378ecbb8c29dd1e3d3951d35.tar.gz
kernel-crypto-79598324838a25cc378ecbb8c29dd1e3d3951d35.tar.xz
kernel-crypto-79598324838a25cc378ecbb8c29dd1e3d3951d35.zip
Merge branch 'topic/core-change' into for-linus
Diffstat (limited to 'drivers/net/cassini.c')
-rw-r--r--drivers/net/cassini.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/cassini.c b/drivers/net/cassini.c
index 05916aafa4f..f857afe8e48 100644
--- a/drivers/net/cassini.c
+++ b/drivers/net/cassini.c
@@ -4342,11 +4342,11 @@ static int cas_open(struct net_device *dev)
cas_unlock_all_restore(cp, flags);
}
+ err = -ENOMEM;
if (cas_tx_tiny_alloc(cp) < 0)
- return -ENOMEM;
+ goto err_unlock;
/* alloc rx descriptors */
- err = -ENOMEM;
if (cas_alloc_rxds(cp) < 0)
goto err_tx_tiny;
@@ -4386,6 +4386,7 @@ err_spare:
cas_free_rxds(cp);
err_tx_tiny:
cas_tx_tiny_free(cp);
+err_unlock:
mutex_unlock(&cp->pm_mutex);
return err;
}