linux/net/mac80211
Ilan Peer 6157ca0d6b mac80211: Fix Tx aggregation session tear down with ITXQs
When mac80211 requests the low level driver to stop an ongoing
Tx aggregation, the low level driver is expected to call
ieee80211_stop_tx_ba_cb_irqsafe() to indicate that it is ready
to stop the session. The callback in turn schedules a worker
to complete the session tear down, which in turn also handles
the relevant state for the intermediate Tx queue.

However, as this flow in asynchronous, the intermediate queue
should be stopped and not continue servicing frames, as in
such a case frames that are dequeued would be marked as part
of an aggregation, although the aggregation is already been
stopped.

Fix this by stopping the intermediate Tx queue, before
calling the low level driver to stop the Tx aggregation.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2019-02-11 15:50:56 +01:00
..
aead_api.c
aead_api.h
aes_ccm.h
aes_cmac.c
aes_cmac.h
aes_gcm.h
aes_gmac.c
aes_gmac.h
agg-rx.c mac80211: add support for HE 2018-06-18 22:40:32 +02:00
agg-tx.c mac80211: Fix Tx aggregation session tear down with ITXQs 2019-02-11 15:50:56 +01:00
cfg.c mac80211: don't initiate TDLS connection if station is not associated to AP 2019-01-25 10:13:22 +01:00
chan.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
debug.h
debugfs_key.c
debugfs_key.h
debugfs_netdev.c {nl,mac}80211: add dot11MeshConnectedToMeshGate to meshconf 2018-11-09 11:39:44 +01:00
debugfs_netdev.h
debugfs_sta.c mac80211: debugfs: avoid variable shadowing 2018-11-09 11:14:51 +01:00
debugfs_sta.h
debugfs.c mac80211: add an option for station management TXQ 2018-09-05 10:10:11 +02:00
debugfs.h
driver-ops.c
driver-ops.h mac80211: allow drivers to use peer measurement API 2018-11-09 11:20:34 +01:00
ethtool.c mac80211: use BIT_ULL for NL80211_STA_INFO_* attribute types 2018-06-29 09:53:09 +02:00
fils_aead.c
fils_aead.h
he.c mac80211: add support for HE 2018-06-18 22:40:32 +02:00
ht.c ieee80211: bump IEEE80211_MAX_AMPDU_BUF to support HE 2018-06-18 22:39:39 +02:00
ibss.c mac80211: add ability to parse CCFS2 2018-09-05 10:03:14 +02:00
ieee80211_i.h mac80211: update driver when MU EDCA params change 2018-12-18 14:19:10 +01:00
iface.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00
Kconfig mac80211: rewrite Kconfig text for mesh 2018-12-05 15:32:28 +01:00
key.c mac80211: remove unnecessary NULL check 2018-09-05 10:15:48 +02:00
key.h
led.c leds: triggers: let struct led_trigger::activate() return an error code 2018-07-05 23:21:10 +02:00
led.h
main.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00
Makefile mac80211: minstrel: merge with minstrel_ht, always enable VHT support 2018-10-11 16:01:01 +02:00
mesh_hwmp.c mac80211: fix TX status reporting for ieee80211s 2018-09-10 09:14:28 +02:00
mesh_pathtbl.c
mesh_plink.c {nl,mac}80211: add rssi to mesh candidates 2018-11-09 11:41:20 +01:00
mesh_ps.c
mesh_sync.c
mesh.c {nl,mac}80211: add rssi to mesh candidates 2018-11-09 11:41:20 +01:00
mesh.h {nl,mac}80211: add rssi to mesh candidates 2018-11-09 11:41:20 +01:00
michael.c mac80211: add get TID helper 2018-02-22 21:13:03 +01:00
michael.h
mlme.c This time we have too many changes to list, highlights: 2018-12-19 08:36:18 -08:00
ocb.c
offchannel.c mac80211: support scan features for improved scan privacy 2018-06-15 13:34:40 +02:00
pm.c
rate.c
rate.h mac80211: minstrel: merge with minstrel_ht, always enable VHT support 2018-10-11 16:01:01 +02:00
rc80211_minstrel_debugfs.c mac80211: rc80211_minstrel: remove variance / stddev calculation 2018-10-11 16:01:05 +02:00
rc80211_minstrel_ht_debugfs.c mac80211: rc80211_minstrel: remove variance / stddev calculation 2018-10-11 16:01:05 +02:00
rc80211_minstrel_ht.c mac80211: minstrel: do not sample rates 3 times slower than max_prob_rate 2018-10-11 16:01:04 +02:00
rc80211_minstrel_ht.h mac80211: minstrel: reduce minstrel_mcs_groups size 2018-10-11 16:01:02 +02:00
rc80211_minstrel.c mac80211: rc80211_minstrel: remove variance / stddev calculation 2018-10-11 16:01:05 +02:00
rc80211_minstrel.h mac80211: rc80211_minstrel: remove variance / stddev calculation 2018-10-11 16:01:05 +02:00
rx.c mac80211: Add attribute aligned(2) to struct 'action' 2019-01-25 10:17:25 +01:00
scan.c mac80211: allow hardware scan to fall back to software 2018-11-09 11:37:04 +01:00
spectmgmt.c mac80211: add ability to parse CCFS2 2018-09-05 10:03:14 +02:00
sta_info.c {nl,mac}80211: report gate connectivity in station info 2018-11-09 11:38:29 +01:00
sta_info.h {nl,mac}80211: report gate connectivity in station info 2018-11-09 11:38:29 +01:00
status.c mac80211: free skb fraglist before freeing the skb 2018-12-19 09:40:17 +01:00
tdls.c mac80211: TDLS: fix skb queue/priority assignment 2018-09-10 09:13:32 +02:00
tkip.c
tkip.h
trace_msg.h
trace.c
trace.h mac80211: allow drivers to use peer measurement API 2018-11-09 11:20:34 +01:00
tx.c mac80211: ensure that mgmt tx skbs have tailroom for encryption 2019-02-01 11:08:02 +01:00
util.c mac80211: call drv_ibss_join() on restart 2019-02-11 15:50:56 +01:00
vht.c mac80211: copy VHT EXT NSS BW Support/Capable data to station 2018-09-05 10:03:14 +02:00
wep.c crypto: drop mask=CRYPTO_ALG_ASYNC from 'cipher' tfm allocations 2018-11-20 14:26:55 +08:00
wep.h
wme.c
wme.h
wpa.c mac80211: add get TID helper 2018-02-22 21:13:03 +01:00
wpa.h