[RFT/RFC 0/5] ath10k: handle/report A-MSDU as a skb list

Janusz Dziedzic janusz.dziedzic at tieto.com
Thu Jul 10 04:45:09 PDT 2014


This is prototype, how we can handle A-MSDU as a skb list in mac80211.
No changes in mac80211 reordering code required in such case, also
we don't need to build one big frame using memcpy ...
With such prototype tid_agg_rx->reorder_buf[sn] will describe exactly
one MPDU (with included A-MSDU subframes if skb->next) and detection of duplicated
frames will work correctly. So, reordering should works correctly.

I tested this with A-MPDU and A-MSDU run together (A-MSDU frame up to 10k) - TCP STA -> AP.
I used ath10k STA with unlocked A-MSDU limit in RC in firmware.
Didn't notice any problems.

@Denton could you check this prototype in your env please

TODO:
mac80211 - release correctly A-MSDU list in case of problems (errors)
verify crypted networks + A-MSDU
introduce test code to ath10k driver that we can test mac80211 reordering implementation


Janusz Dziedzic (5):
  ath10k: amsdu rx, buid one big frame
  mac80211: add option to handle amsdu as a list of skb
  cfg80211: allow RX amsdu to be reported as a list
  ath10k: report amsdu as a skb list
  ath10k: rx, don't pass frames with invalid FCS

 drivers/net/wireless/ath/ath10k/htt_rx.c |   62 ++++++++++++++++----------
 include/net/mac80211.h                   |    4 ++
 net/mac80211/ieee80211_i.h               |    1 +
 net/mac80211/main.c                      |    2 +-
 net/mac80211/rx.c                        |   70 ++++++++++++++++++++++++++++--
 net/wireless/util.c                      |   44 +++++++++++++++++++
 6 files changed, 155 insertions(+), 28 deletions(-)

-- 
1.7.9.5




More information about the ath10k mailing list