linux/net/mac80211
Johannes Berg cd8ffc800c mac80211: fix aggregation to not require queue stop
Instead of stopping the entire AC queue when enabling aggregation
(which was only done for hardware with aggregation queues) buffer
the packets for each station, and release them to the pending skb
queue once aggregation is turned on successfully.

We get a little more code, but it becomes conceptually simpler and
we can remove the entire virtual queue mechanism from mac80211 in
a follow-up patch.

This changes how mac80211 behaves towards drivers that support
aggregation but have no hardware queues -- those drivers will now
not be handed packets while the aggregation session is being
established, but only after it has been fully established.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-03-27 20:13:22 -04:00
..
aes_ccm.c
aes_ccm.h
aes_cmac.c mac80211: 802.11w - Add BIP (AES-128-CMAC) 2009-01-29 16:00:02 -05:00
aes_cmac.h mac80211: 802.11w - Add BIP (AES-128-CMAC) 2009-01-29 16:00:02 -05:00
agg-rx.c mac80211: Tear down aggregation sessions for suspend/resume 2009-03-27 20:12:55 -04:00
agg-tx.c mac80211: fix aggregation to not require queue stop 2009-03-27 20:13:22 -04:00
cfg.c nl80211: Check iftype in cfg80211 code 2009-03-27 20:13:05 -04:00
cfg.h
debugfs_key.c mac80211: 802.11w - Use BIP (AES-128-CMAC) 2009-01-29 16:00:03 -05:00
debugfs_key.h mac80211: 802.11w - Use BIP (AES-128-CMAC) 2009-01-29 16:00:03 -05:00
debugfs_netdev.c mac80211: split IBSS/managed code 2009-02-27 14:51:42 -05:00
debugfs_netdev.h
debugfs_sta.c mac80211: 802.11w - STA flag for MFP 2009-01-29 16:00:00 -05:00
debugfs_sta.h
debugfs.c mac80211: resume properly, add suspend/resume test 2009-03-27 20:13:03 -04:00
debugfs.h
event.c
ht.c mac80211: Extend the rate control API with an update callback 2009-02-27 14:51:45 -05:00
ibss.c mac80211: ieee80211_ibss_commit() cleanup 2009-03-27 20:12:41 -04:00
ieee80211_i.h mac80211: fix aggregation to not require queue stop 2009-03-27 20:13:22 -04:00
iface.c mac80211: add beacon filtering support 2009-03-27 20:13:13 -04:00
Kconfig mac80211: make Minstrel the default rate control algorithm 2008-11-26 09:47:03 -05:00
key.c mac80211: split IBSS/managed code 2009-02-27 14:51:42 -05:00
key.h mac80211: 802.11w - Use BIP (AES-128-CMAC) 2009-01-29 16:00:03 -05:00
led.c
led.h
main.c mac80211: fix aggregation to not require queue stop 2009-03-27 20:13:22 -04:00
Makefile mac80211: split IBSS/managed code 2009-02-27 14:51:42 -05:00
mesh_hwmp.c mac80211: fix RX aggregation timeouts 2009-02-13 13:45:32 -05:00
mesh_pathtbl.c
mesh_plink.c wireless: restrict to 32 legacy rates 2009-01-29 16:01:09 -05:00
mesh.c mac80211: use cfg80211s BSS infrastructure 2009-02-13 13:45:58 -05:00
mesh.h mac80211: use cfg80211s BSS infrastructure 2009-02-13 13:45:58 -05:00
michael.c
michael.h
mlme.c mac80211: add beacon filtering support 2009-03-27 20:13:13 -04:00
pm.c mac80211: resume properly, add suspend/resume test 2009-03-27 20:13:03 -04:00
rate.c mac80211: rate control status only for controlled packets 2009-03-27 20:13:15 -04:00
rate.h mac80211: rate control status only for controlled packets 2009-03-27 20:13:15 -04:00
rc80211_minstrel_debugfs.c
rc80211_minstrel.c minstrel: fix warning if lowest supported rate index is not 0 2009-01-12 14:24:55 -05:00
rc80211_minstrel.h minstrel: improve performance for non-MRR drivers 2008-10-31 19:00:36 -04:00
rc80211_pid_algo.c mac80211: Fix pid rate-setting algorithm to allow rate changes 2008-11-26 09:47:20 -05:00
rc80211_pid_debugfs.c mac80211/drivers: rewrite the rate control API 2008-10-31 19:00:23 -04:00
rc80211_pid.h mac80211/drivers: rewrite the rate control API 2008-10-31 19:00:23 -04:00
rx.c mac80211: fix RX path 2009-03-27 20:13:19 -04:00
scan.c mac80211: disable power save when scanning 2009-03-27 20:13:12 -04:00
spectmgmt.c mac80211: split IBSS/managed code 2009-02-27 14:51:42 -05:00
sta_info.c mac80211: fix aggregation to not require queue stop 2009-03-27 20:13:22 -04:00
sta_info.h mac80211: fix aggregation to not require queue stop 2009-03-27 20:13:22 -04:00
tkip.c
tkip.h
tx.c mac80211: fix aggregation to not require queue stop 2009-03-27 20:13:22 -04:00
util.c mac80211: rework the pending packets code 2009-03-27 20:13:21 -04:00
wep.c mac80211: rewrite fragmentation 2009-03-27 20:13:21 -04:00
wep.h mac80211: minor code cleanups 2008-10-31 18:05:59 -04:00
wext.c mac80211: remove mixed-cell and userspace MLME code 2009-03-27 20:13:08 -04:00
wme.c mac80211: Fix WMM ACM parsing and AC downgrade operation 2009-03-16 18:09:27 -04:00
wme.h mac80211: fix aggregation for hardware with ampdu queues 2009-02-27 14:51:42 -05:00
wpa.c mac80211: rewrite fragmentation 2009-03-27 20:13:21 -04:00
wpa.h mac80211: 802.11w - Add BIP (AES-128-CMAC) 2009-01-29 16:00:02 -05:00