CVSROOT:        /cvs
Module name:    src
Changes by:     s...@cvs.openbsd.org    2019/07/29 04:50:09

Modified files:
        sys/dev/pci    : if_iwn.c if_iwnreg.h if_iwnvar.h 
        sys/net80211   : ieee80211.c ieee80211_input.c ieee80211_mira.c 
                         ieee80211_node.c ieee80211_node.h 
                         ieee80211_output.c ieee80211_proto.c 
                         ieee80211_proto.h ieee80211_var.h 

Log message:
Add support for 802.11n Tx aggregation to net80211 and the iwn(4) driver.

In particular, add Tx block ack session management to net80211, with
enough funcionality to support Tx aggregation on devices which perform
A-MPDU subframe scheduling in firmware.
Make use of the iwn(4) firmware Tx scheduler to build A-MPDUs.

net80211's QoS support code is now enabled and used by Tx aggregation.

A-MSDU frames inside A-MPDUs have been tested and work in principle.
For now, this feature is disabled because unfair TCP connection sharing
was observed during testing, where bursts of TCP Ack frames for a single
tcpbench(1) connection arriving in A-MSDUs made other TCP connections stall.
Switch off support for A-MSDUs inside A-MPDUs on the Rx side as well.

Tested on iwn chipsets 1000, 4965, 5100, 5300, 2200, 6200, 6205, 6300
(committed version of tested diff has all debug printfs removed)
tests/ok benno kmos mlarkin kevlo

Reply via email to