Search Linux Wireless

[RFC 0/3] Fix CSA locking issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Unfortunately my channel switch announcement patches contained locking issues
which I didn't notice during my test due to bad configuration. Johannes pointed
them out, so here is my attempt to fix them. This series attempts to fix two
issues:

 * There are "suspicious rcu_dereference_protected() usage" problems for
   ieee80211_assign_beacon and ieee80211_ibss_csa_beacon because the respective
   locking was missing
 * There is a circular dependency between the wdev/sdata-lock and the
   csa_finalize worker lock (see description in patch 3).

The fix is not really trivial and I'm not an expert on the cfg80211/mac80211
locking, so I'd like to request your critical review. Patches are based
on mac80211-next.

Thanks,
   Simon


Simon Wunderlich (3):
  mac80211: modify beacon using sdata/wdev-lock, not rtnl lock
  cfg80211/mac80211/ath6kl: acquire wdev lock outside ch_switch_notify
  mac80211: don't cancel csa finalize work within stop_ap

 drivers/net/wireless/ath/ath6kl/cfg80211.c |    2 +
 include/net/cfg80211.h                     |    3 +-
 net/mac80211/cfg.c                         |  136 ++++++++++++++++++----------
 net/mac80211/ieee80211_i.h                 |    3 +
 net/wireless/nl80211.c                     |    9 +-
 5 files changed, 100 insertions(+), 53 deletions(-)

-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux