OpenCloudOS-Kernel/drivers/net/wireless/ath
Stanislaw Gruszka 2fa4cb9056 ath9k_htc: make ->sta_rc_update atomic for most calls
sta_rc_update() callback must be atomic, hence we can not take mutexes
or do other operations, which can sleep in ath9k_htc_sta_rc_update().

I think we can just return from ath9k_htc_sta_rc_update(), if it is
called without IEEE80211_RC_SUPP_RATES_CHANGED bit. That will help
with scheduling while atomic bug for most cases (except mesh and IBSS
modes).

For mesh and IBSS I do not see other solution like creating additional
workqueue, because sending firmware command require us to sleep, but
this can be done in additional patch.

Patch partially fixes bug:
https://bugzilla.redhat.com/show_bug.cgi?id=990955

Cc: stable@vger.kernel.org
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2014-02-04 15:30:06 -05:00
..
ar5523 wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
ath5k ath5k: use ath_is_mybeacon 2014-01-16 14:55:45 -05:00
ath6kl Merge remote-tracking branch 'wireless-next/master' into mac80211-next 2013-12-16 11:23:45 +01:00
ath9k ath9k_htc: make ->sta_rc_update atomic for most calls 2014-02-04 15:30:06 -05:00
ath10k Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2014-01-13 14:40:59 -05:00
carl9170 carl9170: use ath_is_mybeacon 2014-01-16 14:55:45 -05:00
wcn36xx net: wirelesse: wcn36xx: pull allocation outside of critical section 2013-12-18 15:18:19 -05:00
wil6210 wil6210: correct #include for prefetch() 2014-01-16 14:55:43 -05:00
Kconfig ath: add support for proper dynamic regulatory hints 2013-10-18 14:04:41 -04:00
Makefile ath9k/ath: move dfs pattern detector to ath 2013-10-18 14:03:54 -04:00
ath.h ath: add common function ath_is_mybeacon 2014-01-16 14:55:44 -05:00
debug.c
dfs_pattern_detector.c ath9k/ath: move dfs pattern detector to ath 2013-10-18 14:03:54 -04:00
dfs_pattern_detector.h ath9k/ath: move dfs pattern detector to ath 2013-10-18 14:03:54 -04:00
dfs_pri_detector.c ath9k/ath: move dfs pattern detector to ath 2013-10-18 14:03:54 -04:00
dfs_pri_detector.h ath9k/ath: move dfs pattern detector to ath 2013-10-18 14:03:54 -04:00
hw.c ath: update hardware mac address with bssid mask 2013-04-22 15:20:15 -04:00
key.c ath: Let user know which keycache method is complaining. 2013-04-08 15:28:37 -04:00
main.c ath: add common function ath_is_mybeacon 2014-01-16 14:55:44 -05:00
reg.h ath: update hardware mac address with bssid mask 2013-04-22 15:20:15 -04:00
regd.c cfg80211: make regulatory_hint() remove REGULATORY_CUSTOM_REG 2014-01-13 14:46:58 -05:00
regd.h wireless: make the reg_notifier() void 2013-01-14 11:32:44 +01:00
regd_common.h