linux/drivers/net/wireless/ath
Daniel Mack 271f1e65ff wcn36xx: don't keep reference to skb if transmission failed
When wcn36xx_dxe_tx_frame() fails to transmit the TX frame, the driver
will call into ieee80211_free_txskb() for the skb in flight, so it'll no
longer be valid. Hence, we shouldn't keep a reference to it in ctl->skb.
Also, if the skb has IEEE80211_TX_CTL_REQ_TX_STATUS set, a pointer to
it will currently remain in wcn->tx_ack_skb, which will potentially lead
to a crash if accessed later.

Fix this by checking the return value of wcn36xx_dxe_tx_frame(), and
nullify wcn->tx_ack_skb again in case of errors. Move the assignment
of ctl->skb in wcn36xx_dxe_tx_frame() so it only happens when the
transmission is successful.

Signed-off-by: Daniel Mack <daniel@zonque.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2018-04-10 17:34:14 +03:00
..
ar5523
ath5k ath: Remove unnecessary ath_bcast_mac and use eth_broadcast_addr 2018-03-29 12:10:26 +03:00
ath6kl wireless: Use octal not symbolic permissions 2018-03-27 11:01:13 +03:00
ath9k ath9k: dfs: remove accidental use of stack VLA 2018-04-10 17:32:44 +03:00
ath10k ath10k: fix spelling mistake: "tiggers" -> "triggers" 2018-04-10 17:31:47 +03:00
carl9170 wireless: Use octal not symbolic permissions 2018-03-27 11:01:13 +03:00
wcn36xx wcn36xx: don't keep reference to skb if transmission failed 2018-04-10 17:34:14 +03:00
wil6210 wil6210: fix potential null dereference of ndev before null check 2018-04-10 17:29:10 +03:00
ath.h ath: Remove unnecessary ath_bcast_mac and use eth_broadcast_addr 2018-03-29 12:10:26 +03:00
debug.c
dfs_pattern_detector.c ath: fix false radar detection in JP region 2018-03-26 18:09:57 +03:00
dfs_pattern_detector.h
dfs_pri_detector.c
dfs_pri_detector.h
hw.c
Kconfig net/wireless: fix spaces and grammar copy/paste in vendor Kconfig help text 2018-03-13 18:52:25 +02:00
key.c
main.c
Makefile
reg.h
regd.c
regd.h
regd_common.h
spectral_common.h
trace.c
trace.h