linux/drivers/net/wireless
Douglas Anderson e0b636e5ee mwifiex: Don't release tx_ba_stream_tbl_lock while iterating
Despite the macro list_for_each_entry_safe() having the word "safe" in
the name, it's still not actually safe to release the list spinlock
while iterating over the list.  The "safe" in the macro name actually
only means that it's safe to delete the current entry while iterating
over the list.

Releasing the spinlock while iterating over the list means that someone
else could come in and adjust the list while we don't have the
spinlock.  If they do that it can totally mix up our iteration and fully
corrupt the list.  Later iterating over a corrupted list while holding a
spinlock and having IRQs off can cause all sorts of hard to debug
problems.

As evidenced by the other call to
mwifiex_11n_delete_tx_ba_stream_tbl_entry() in
mwifiex_11n_delete_all_tx_ba_stream_tbl(), it's actually safe to skip
the spinlock release.  Let's do that.

No known problems are fixed by this patch, but it could fix all sorts of
weird problems and it should be very safe.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2017-05-19 09:01:55 +03:00
..
admtek wireless: Set NL80211_EXT_FEATURE_CQM_RSSI_LIST in multiple drivers 2017-03-06 09:21:39 +01:00
ath mac80211: properly remove RX_ENC_FLAG_40MHZ 2017-05-08 11:11:56 +02:00
atmel My last pull request has been a while, we now have: 2017-04-20 13:54:40 -04:00
broadcom brcmfmac: move scheduled scan wiphy param setting to pno module 2017-05-18 16:36:05 +03:00
cisco Annotate hardware config module parameters in drivers/net/wireless/ 2017-04-20 12:02:32 +01:00
intel mac80211: properly remove RX_ENC_FLAG_40MHZ 2017-05-08 11:11:56 +02:00
intersil Another set of patches for -next: 2017-04-28 14:41:15 -04:00
marvell mwifiex: Don't release tx_ba_stream_tbl_lock while iterating 2017-05-19 09:01:55 +03:00
mediatek Another set of patches for -next: 2017-04-28 14:41:15 -04:00
ralink mac80211: separate encoding/bandwidth from flags 2017-04-28 10:41:45 +02:00
realtek rtlwifi: rtl8723ae: fix spelling mistake: "Coexistance" -> "Coexistence" 2017-05-18 17:15:00 +03:00
rsi wireless: Set NL80211_EXT_FEATURE_CQM_RSSI_LIST in multiple drivers 2017-03-06 09:21:39 +01:00
st mac80211: separate encoding/bandwidth from flags 2017-04-28 10:41:45 +02:00
ti wlcore: use memdup_user 2017-05-18 16:41:23 +03:00
zydas My last pull request has been a while, we now have: 2017-04-20 13:54:40 -04:00
Kconfig wireless: deprecate WDS and disable by default 2016-10-27 09:08:43 +02:00
mac80211_hwsim.c mac80211: properly remove RX_ENC_FLAG_40MHZ 2017-05-08 11:11:56 +02:00
mac80211_hwsim.h mac80211_hwsim: fix command documentation indentation 2017-03-06 09:21:48 +01:00
Makefile
ray_cs.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
ray_cs.h
rayctl.h
rndis_wlan.c Another set of patches for -next: 2017-04-28 14:41:15 -04:00
wl3501_cs.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
wl3501.h