summaryrefslogtreecommitdiffstats
path: root/net/mac80211/ibss.c
diff options
context:
space:
mode:
authorMichal Kazior <michal.kazior@tieto.com>2014-01-29 01:56:17 -0500
committerJohannes Berg <johannes.berg@intel.com>2014-02-04 15:58:09 -0500
commitfaf046e7231bf008715bbffe5cca2ed3aa31be1b (patch)
treed48e8c2c753cef78202dd41656fbc1e7b679d2da /net/mac80211/ibss.c
parent348baf0eac3391c62d441ec29b4c5da62ed91e74 (diff)
mac80211: batch CSA bss info notification
Instead of having ieee80211_bss_info_change_notify() scattered all over the place just call it once when finalizing CSA. As a side effect this patch adds missing error checking for IBSS CSA beacon update. Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Reviewed-by: Luciano Coelho <luciano.coelho@intel.com> [fix err vs. changed variable usage in ieee80211_csa_finalize()] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/ibss.c')
-rw-r--r--net/mac80211/ibss.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/net/mac80211/ibss.c b/net/mac80211/ibss.c
index ed7eec3f6ee0..82d3d14b03c5 100644
--- a/net/mac80211/ibss.c
+++ b/net/mac80211/ibss.c
@@ -530,7 +530,7 @@ int ieee80211_ibss_finish_csa(struct ieee80211_sub_if_data *sdata)
530{ 530{
531 struct ieee80211_if_ibss *ifibss = &sdata->u.ibss; 531 struct ieee80211_if_ibss *ifibss = &sdata->u.ibss;
532 struct cfg80211_bss *cbss; 532 struct cfg80211_bss *cbss;
533 int err; 533 int err, changed = 0;
534 u16 capability; 534 u16 capability;
535 535
536 sdata_assert_lock(sdata); 536 sdata_assert_lock(sdata);
@@ -562,10 +562,9 @@ int ieee80211_ibss_finish_csa(struct ieee80211_sub_if_data *sdata)
562 if (err < 0) 562 if (err < 0)
563 return err; 563 return err;
564 564
565 if (err) 565 changed |= err;
566 ieee80211_bss_info_change_notify(sdata, err);
567 566
568 return 0; 567 return changed;
569} 568}
570 569
571void ieee80211_ibss_stop(struct ieee80211_sub_if_data *sdata) 570void ieee80211_ibss_stop(struct ieee80211_sub_if_data *sdata)