瀏覽代碼

nl80211: fix error in generic netif_running check

Yikes! The error return keeps a netdev reference
and the rdev mutex locked, fix that!

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Johannes Berg 14 年之前
父節點
當前提交
d537f5fdfc
共有 1 個文件被更改,包括 2 次插入0 次删除
  1. 2 0
      net/wireless/nl80211.c

+ 2 - 0
net/wireless/nl80211.c

@@ -4418,6 +4418,8 @@ static int nl80211_pre_doit(struct genl_ops *ops, struct sk_buff *skb,
 		}
 		if (ops->internal_flags & NL80211_FLAG_CHECK_NETDEV_UP &&
 		    !netif_running(dev)) {
+			cfg80211_unlock_rdev(rdev);
+			dev_put(dev);
 			if (rtnl)
 				rtnl_unlock();
 			return -ENETDOWN;