summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/atmel.c
diff options
context:
space:
mode:
authorFelix Fietkau2013-05-18 21:28:15 +0200
committerJohn W. Linville2013-05-22 20:28:44 +0200
commit08c96abd611beadf2af414a306fe0fb02ba706ff (patch)
tree2ee91910a79083004eacad4a05fe0699d4a7e534 /drivers/net/wireless/atmel.c
parentSamuel Ortiz <sameo@linux.intel.com> says: (diff)
downloadkernel-qcow2-linux-08c96abd611beadf2af414a306fe0fb02ba706ff.tar.gz
kernel-qcow2-linux-08c96abd611beadf2af414a306fe0fb02ba706ff.tar.xz
kernel-qcow2-linux-08c96abd611beadf2af414a306fe0fb02ba706ff.zip
ath9k: prevent aggregation session deadlocks
Waiting for all subframes of an existing aggregation session to drain before allowing mac80211 to start a new one is fragile and deadlocks caused by this behavior have been observed. Since mac80211 has proper synchronization for aggregation session start/stop handling, a better approach to session handling is to simply allow mac80211 to start a new session at any time. This requires changing the code to discard any packets outside of the BlockAck window in the A-MPDU software retry code. This patch implements the above and also simplifies the code. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/atmel.c')
0 files changed, 0 insertions, 0 deletions