From: Zhu Yi Date: Mon, 21 Aug 2006 03:38:52 +0000 (+0800) Subject: [PATCH] ipw2100: Fix deadlock detected by lockdep X-Git-Tag: v2.6.19-rc1~1263^2~60^2~5 X-Git-Url: http://www.pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=efbd809829001c94e48b96337ea05a16d5ecee85;p=linux-2.6-omap-h63xx.git [PATCH] ipw2100: Fix deadlock detected by lockdep Fix by removing dependency between priv->action_sem and rtnl semaphore. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville --- diff --git a/drivers/net/wireless/ipw2100.c b/drivers/net/wireless/ipw2100.c index e955db435b3..5d5dab6a209 100644 --- a/drivers/net/wireless/ipw2100.c +++ b/drivers/net/wireless/ipw2100.c @@ -6254,13 +6254,14 @@ static int ipw2100_pci_init_one(struct pci_dev *pci_dev, * member to call a function that then just turns and calls ipw2100_up. * net_dev->init is called after name allocation but before the * notifier chain is called */ - mutex_lock(&priv->action_mutex); err = register_netdev(dev); if (err) { printk(KERN_WARNING DRV_NAME "Error calling register_netdev.\n"); - goto fail_unlock; + goto fail; } + + mutex_lock(&priv->action_mutex); registered = 1; IPW_DEBUG_INFO("%s: Bound to %s\n", dev->name, pci_name(pci_dev));