diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2010-01-11 16:14:57 +0100 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-01-11 19:37:09 -0500 |
commit | 8c5d9808e95739c9001b852464fd58fd0f583280 (patch) | |
tree | b784444a3f86577b41cb30723f2aebd8dfc2eb0b /net/wireless | |
parent | 193e70ef65a6c33f2935ce1f4adeb08ecb9202cf (diff) | |
download | linux-3.10-8c5d9808e95739c9001b852464fd58fd0f583280.tar.gz linux-3.10-8c5d9808e95739c9001b852464fd58fd0f583280.tar.bz2 linux-3.10-8c5d9808e95739c9001b852464fd58fd0f583280.zip |
cfg80211: fix refcount imbalance when wext is disabled
When CONFIG_CFG80211_WEXT is not set, there is
a refcount imbalance with rdev->opencount, fix
that by moving it out of the ifdef.
Reported-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/wireless')
-rw-r--r-- | net/wireless/core.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/wireless/core.c b/net/wireless/core.c index c2a2c563d21..92b81244248 100644 --- a/net/wireless/core.c +++ b/net/wireless/core.c @@ -745,9 +745,9 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb, mutex_unlock(&rdev->devlist_mtx); dev_put(dev); } -#ifdef CONFIG_CFG80211_WEXT cfg80211_lock_rdev(rdev); mutex_lock(&rdev->devlist_mtx); +#ifdef CONFIG_CFG80211_WEXT wdev_lock(wdev); switch (wdev->iftype) { case NL80211_IFTYPE_ADHOC: @@ -760,10 +760,10 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb, break; } wdev_unlock(wdev); +#endif rdev->opencount++; mutex_unlock(&rdev->devlist_mtx); cfg80211_unlock_rdev(rdev); -#endif break; case NETDEV_UNREGISTER: /* |