diff options
author | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2015-10-26 14:14:06 (GMT) |
---|---|---|
committer | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2016-02-27 20:00:01 (GMT) |
commit | 9e7dce28659531b2741939e5b6f438bca1422720 (patch) | |
tree | 2136f97debb86bad16664aa121baf0429aee0170 /drivers/net/wireless/intel/iwlwifi/mvm/tx.c | |
parent | bb81bb68f472bb0f9afbb483259d91d4efd86bfb (diff) | |
download | linux-9e7dce28659531b2741939e5b6f438bca1422720.tar.xz |
iwlwifi: mvm: allow to limit the A-MSDU from debugfs
in order to be able to tune the size of the desired A-MSDU
based on link condition, add a knob to modify the length
of the A-MSDU.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/tx.c')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/tx.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c index ff08b17..a5a55da1 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c @@ -448,6 +448,7 @@ static int iwl_mvm_tx_tso(struct iwl_mvm *mvm, struct sk_buff *skb, bool ipv4 = (skb->protocol == htons(ETH_P_IP)); u16 ip_base_id = ipv4 ? ntohs(ip_hdr(skb)->id) : 0; u16 amsdu_add, snap_ip_tcp, pad, i = 0; + unsigned int dbg_max_amsdu_len; u8 *qc, tid; snap_ip_tcp = 8 + skb_transport_header(skb) - skb_network_header(skb) + @@ -477,6 +478,10 @@ static int iwl_mvm_tx_tso(struct iwl_mvm *mvm, struct sk_buff *skb, } max_amsdu_len = sta->max_amsdu_len; + dbg_max_amsdu_len = ACCESS_ONCE(mvm->max_amsdu_len); + if (dbg_max_amsdu_len) + max_amsdu_len = min_t(unsigned int, max_amsdu_len, + dbg_max_amsdu_len); /* * Limit A-MSDU in A-MPDU to 4095 bytes when VHT is not |