linux/net/mac80211
Johannes Berg deeaee197b mac80211: reply only once to each PS-poll
If a PS-poll frame is retried (but was received)
there is no way to detect that since it has no
sequence number. As a consequence, the standard
asks us to not react to PS-poll frames until the
response to one made it out (was ACKed or lost).

Implement this by using the WLAN_STA_SP flags to
also indicate a PS-Poll "service period" and the
IEEE80211_TX_STATUS_EOSP flag for the response
packet to indicate the end of the "SP" as usual.

We could use separate flags, but that will most
likely completely confuse drivers, and while the
standard doesn't exclude simultaneously polling
using uAPSD and PS-Poll, doing that seems quite
problematic.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-09-30 15:57:18 -04:00
..
aes_ccm.c mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_ccm.h mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_cmac.c mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_cmac.h mac80211: fix CMAC races 2011-07-08 11:11:20 -04:00
agg-rx.c mac80211: Remove unnecessary OOM logging messages 2011-09-13 15:45:02 -04:00
agg-tx.c mac80211: make ieee80211_send_bar available for drivers 2011-09-14 13:56:16 -04:00
cfg.c mac80211: data path modification for TDLS peers 2011-09-30 15:57:09 -04:00
cfg.h
chan.c mac80211: fix channel type recalculation with HT and non-HT interfaces 2011-03-14 14:46:58 -04:00
debugfs_key.c mac80211: fix CMAC races 2011-07-08 11:11:20 -04:00
debugfs_key.h mac80211: support separate default keys 2010-12-13 15:23:29 -05:00
debugfs_netdev.c mac80211: add ieee80211_vif param to tsf functions 2011-09-27 14:27:48 -04:00
debugfs_netdev.h mac80211: reduce reliance on netdev 2009-12-21 18:38:52 -05:00
debugfs_sta.c mac80211: split PS buffers into ACs 2011-09-30 15:57:12 -04:00
debugfs_sta.h
debugfs.c mac80211: add ieee80211_vif param to tsf functions 2011-09-27 14:27:48 -04:00
debugfs.h mac80211: refactor debugfs function generation code 2010-11-15 13:24:48 -05:00
driver-ops.h mac80211: allow releasing driver-buffered frames 2011-09-30 15:57:15 -04:00
driver-trace.c mac80211: fix sparse warnings/errors 2009-08-04 16:43:25 -04:00
driver-trace.h mac80211: allow releasing driver-buffered frames 2011-09-30 15:57:15 -04:00
event.c cfg80211: use proper allocation flags 2009-07-10 15:01:49 -04:00
ht.c mac80211: Remove unnecessary OOM logging messages 2011-09-13 15:45:02 -04:00
ibss.c mac80211: add ieee80211_vif param to tsf functions 2011-09-27 14:27:48 -04:00
ieee80211_i.h mac80211: send (QoS) Null if no buffered frames 2011-09-30 15:57:16 -04:00
iface.c mac80211: fix AP/VLAN PS buffer race 2011-09-21 16:19:41 -04:00
Kconfig mac80211: handle TDLS high-level commands and frames 2011-09-30 15:57:07 -04:00
key.c mac80211: let key iteration get keys in install order 2011-07-15 13:38:33 -04:00
key.h mac80211: allow driver to disconnect after resume 2011-07-13 14:49:43 -04:00
led.c mac80211: remove stray extern 2011-01-05 16:07:12 -05:00
led.h mac80211: selective throughput LED trigger active 2010-12-22 14:33:37 -05:00
main.c mac80211: handle TDLS high-level commands and frames 2011-09-30 15:57:07 -04:00
Makefile mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
mesh_hwmp.c mac80211: Mesh data frames must have the QoS header 2011-09-14 13:56:50 -04:00
mesh_pathtbl.c mac80211: Mesh data frames must have the QoS header 2011-09-14 13:56:50 -04:00
mesh_plink.c mac80211: standardize adding supported rates IEs 2011-09-30 15:57:06 -04:00
mesh.c mac80211: standardize adding supported rates IEs 2011-09-30 15:57:06 -04:00
mesh.h mac80211: standardize adding supported rates IEs 2011-09-30 15:57:06 -04:00
michael.c
michael.h
mlme.c nl80211/mac80211: allow adding TDLS peers as stations 2011-09-30 15:57:08 -04:00
offchannel.c mac80211: Optimize scans on current operating channel. 2011-02-04 16:30:32 -05:00
pm.c mac80211: be more careful in suspend/resume 2011-07-15 13:39:42 -04:00
rate.c mac80211: Send the management frame at requested rate 2011-09-27 14:34:10 -04:00
rate.h mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
rc80211_minstrel_debugfs.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
rc80211_minstrel_ht_debugfs.c mac80211: disallow seeks in minstrel debug code 2010-09-16 10:33:17 +02:00
rc80211_minstrel_ht.c mac80211: max_tp_rate2 management of minstrel_ht 2011-09-30 15:16:25 -04:00
rc80211_minstrel_ht.h minstrel_ht: move minstrel_mcs_groups declaration to header file 2010-06-24 15:42:18 -04:00
rc80211_minstrel.c minstrel_ht: fixed rate mode through debugfs 2011-06-01 15:12:29 -04:00
rc80211_minstrel.h minstrel_ht: fixed rate mode through debugfs 2011-06-01 15:12:29 -04:00
rc80211_pid_algo.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
rc80211_pid_debugfs.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 2010-10-23 11:47:02 -07:00
rc80211_pid.h Fix common misspellings 2011-03-31 11:26:23 -03:00
rx.c mac80211: reply only once to each PS-poll 2011-09-30 15:57:18 -04:00
scan.c mac80211: Send the management frame at requested rate 2011-09-27 14:34:10 -04:00
spectmgmt.c mac80211: Remove unnecessary OOM logging messages 2011-09-13 15:45:02 -04:00
sta_info.c mac80211: reply only once to each PS-poll 2011-09-30 15:57:18 -04:00
sta_info.h mac80211: reply only once to each PS-poll 2011-09-30 15:57:18 -04:00
status.c mac80211: implement uAPSD 2011-09-30 15:57:15 -04:00
tkip.c mac80211: allow driver access to TKIP RX P1K 2011-07-15 13:38:32 -04:00
tkip.h mac80211: fix TKIP races, make API easier to use 2011-07-08 11:11:19 -04:00
tx.c mac80211: send (QoS) Null if no buffered frames 2011-09-30 15:57:16 -04:00
util.c mac80211: remove return value from add_pending_skbs 2011-09-30 15:57:13 -04:00
wep.c mac80211: remove the dependency on crypto_blkcipher 2011-04-04 16:20:00 -04:00
wep.h mac80211: remove the dependency on crypto_blkcipher 2011-04-04 16:20:00 -04:00
wme.c mac80211: Mesh data frames must have the QoS header 2011-09-14 13:56:50 -04:00
wme.h mac80211: Mesh data frames must have the QoS header 2011-09-14 13:56:50 -04:00
work.c mac80211: Send the management frame at requested rate 2011-09-27 14:34:10 -04:00
wpa.c mac80211: simplify RX PN/IV handling 2011-07-08 11:42:21 -04:00
wpa.h