kernel-fxtec-pro1x/net/mac80211
Ilan Peer a5a2444511 mac80211: Fix Tx aggregation session tear down with ITXQs
[ Upstream commit 6157ca0d6bfe437691b1e98a62e2efe12b6714da ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-03-23 20:09:45 +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-03-23 20:09:45 +01:00
cfg.c mac80211: don't initiate TDLS connection if station is not associated to AP 2019-03-05 17:58:52 +01:00
chan.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
debug.h
debugfs.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-03-23 11:31:58 -04:00
debugfs.h
debugfs_key.c
debugfs_key.h
debugfs_netdev.c
debugfs_netdev.h
debugfs_sta.c
debugfs_sta.h
driver-ops.c
driver-ops.h mac80211: Support adding duration for prepare_tx() callback 2018-05-23 11:06:10 +02: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: shorten the IBSS debug messages 2018-09-03 10:41:27 +02:00
ieee80211_i.h mac80211: add support for HE 2018-06-18 22:40:32 +02:00
iface.c mac80211: fix a kernel panic when TXing after TXQ teardown 2019-01-13 09:51:01 +01:00
Kconfig
key.c mac80211: restrict delayed tailroom needed decrement 2018-07-24 09:21:12 +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 mac80211: fix a kernel panic when TXing after TXQ teardown 2019-01-13 09:51:01 +01:00
Makefile mac80211: add support for HE 2018-06-18 22:40:32 +02:00
mesh.c mac80211: notify driver for change in multicast rates 2018-03-23 13:23:17 +01:00
mesh.h mac80211: Use linked list instead of rhashtable walk for mesh tables 2019-02-27 10:08:49 +01:00
mesh_hwmp.c mac80211: fix TX status reporting for ieee80211s 2018-09-10 09:14:28 +02:00
mesh_pathtbl.c mac80211: Free mpath object when rhashtable insertion fails 2019-02-27 10:08:49 +01:00
mesh_plink.c mac80211: mesh: fix premature update of rc stats 2018-05-18 10:02:28 +02:00
mesh_ps.c
mesh_sync.c
michael.c
michael.h
mlme.c Here are quite a large number of fixes, notably: 2018-09-03 22:12:02 -07: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
rc80211_minstrel.c net: remove blank lines at end of file 2018-07-24 14:10:43 -07:00
rc80211_minstrel.h
rc80211_minstrel_debugfs.c net: Use octal not symbolic permissions 2018-03-26 12:07:48 -04:00
rc80211_minstrel_ht.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
rc80211_minstrel_ht.h
rc80211_minstrel_ht_debugfs.c net: Use octal not symbolic permissions 2018-03-26 12:07:48 -04:00
rx.c mac80211: Add attribute aligned(2) to struct 'action' 2019-03-05 17:58:52 +01:00
scan.c This round's updates: 2018-06-30 21:08:12 +09:00
spectmgmt.c
sta_info.c mac80211: use BIT_ULL for NL80211_STA_INFO_* attribute types 2018-06-29 09:53:09 +02:00
sta_info.h mac80211: add support for HE 2018-06-18 22:40:32 +02:00
status.c mac80211: free skb fraglist before freeing the skb 2019-01-13 09:51:02 +01:00
tdls.c mac80211: TDLS: fix skb queue/priority assignment 2018-09-10 09:13:32 +02:00
tkip.c
tkip.h
trace.c
trace.h mac80211: add support for HE 2018-06-18 22:40:32 +02:00
trace_msg.h
tx.c mac80211: Change default tx_sk_pacing_shift to 7 2019-03-05 17:58:45 +01:00
util.c mac80211: call drv_ibss_join() on restart 2019-03-23 20:09:44 +01:00
vht.c mac80211: Use proper chan_width enum in sta opmode event 2018-03-29 10:19:59 +02:00
wep.c
wep.h
wme.c
wme.h
wpa.c
wpa.h