Commit a796dac9 authored by Tomasz Bursztyka's avatar Tomasz Bursztyka Committed by John W. Linville

wireless: core: Reorder wiphy_register() notifications relevantly

Currently it can send regulatory domain change notification before any
NEW_WIPHY notification. Moreover, if rfill_register() fails, calling
wiphy_unregister() will send a DEL_WIPHY though no NEW_WIPHY had been
sent previously.

Thus reordering so it properly notifies NEW_WIPHY before any other.
Signed-off-by: default avatarTomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent f0bd88df
...@@ -635,6 +635,9 @@ int wiphy_register(struct wiphy *wiphy) ...@@ -635,6 +635,9 @@ int wiphy_register(struct wiphy *wiphy)
if (IS_ERR(rdev->wiphy.debugfsdir)) if (IS_ERR(rdev->wiphy.debugfsdir))
rdev->wiphy.debugfsdir = NULL; rdev->wiphy.debugfsdir = NULL;
cfg80211_debugfs_rdev_add(rdev);
nl80211_notify_wiphy(rdev, NL80211_CMD_NEW_WIPHY);
if (wiphy->regulatory_flags & REGULATORY_CUSTOM_REG) { if (wiphy->regulatory_flags & REGULATORY_CUSTOM_REG) {
struct regulatory_request request; struct regulatory_request request;
...@@ -646,8 +649,6 @@ int wiphy_register(struct wiphy *wiphy) ...@@ -646,8 +649,6 @@ int wiphy_register(struct wiphy *wiphy)
nl80211_send_reg_change_event(&request); nl80211_send_reg_change_event(&request);
} }
cfg80211_debugfs_rdev_add(rdev);
rdev->wiphy.registered = true; rdev->wiphy.registered = true;
rtnl_unlock(); rtnl_unlock();
...@@ -659,8 +660,6 @@ int wiphy_register(struct wiphy *wiphy) ...@@ -659,8 +660,6 @@ int wiphy_register(struct wiphy *wiphy)
return res; return res;
} }
nl80211_notify_wiphy(rdev, NL80211_CMD_NEW_WIPHY);
return 0; return 0;
} }
EXPORT_SYMBOL(wiphy_register); EXPORT_SYMBOL(wiphy_register);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment