diff options
Diffstat (limited to 'package/mac80211/patches/520-mac80211_minstrel_ht_aggr_delay.patch')
-rw-r--r-- | package/mac80211/patches/520-mac80211_minstrel_ht_aggr_delay.patch | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/package/mac80211/patches/520-mac80211_minstrel_ht_aggr_delay.patch b/package/mac80211/patches/520-mac80211_minstrel_ht_aggr_delay.patch deleted file mode 100644 index 8f074f0217..0000000000 --- a/package/mac80211/patches/520-mac80211_minstrel_ht_aggr_delay.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- a/net/mac80211/rc80211_minstrel_ht.c -+++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -357,10 +357,12 @@ minstrel_downgrade_rate(struct minstrel_ - } - - static void --minstrel_aggr_check(struct minstrel_priv *mp, struct ieee80211_sta *pubsta, struct sk_buff *skb) -+minstrel_aggr_check(struct minstrel_priv *mp, struct minstrel_ht_sta *mi, -+ struct ieee80211_sta *pubsta, struct sk_buff *skb) - { - struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) skb->data; - struct sta_info *sta = container_of(pubsta, struct sta_info, sta); -+ unsigned long t1, t2; - u16 tid; - - if (unlikely(!ieee80211_is_data_qos(hdr->frame_control))) -@@ -376,6 +378,12 @@ minstrel_aggr_check(struct minstrel_priv - if (skb_get_queue_mapping(skb) == IEEE80211_AC_VO) - return; - -+ t1 = mi->last_aggr_start_time[tid]; -+ t2 = t1 + msecs_to_jiffies(5000); -+ if (unlikely(time_in_range(jiffies, t1, t2))) -+ return; -+ -+ mi->last_aggr_start_time[tid] = jiffies; - ieee80211_start_tx_ba_session(pubsta, tid, 5000); - } - -@@ -455,7 +463,7 @@ minstrel_ht_tx_status(void *priv, struct - if (time_after(jiffies, mi->stats_update + (mp->update_interval / 2 * HZ) / 1000)) { - minstrel_ht_update_stats(mp, mi); - if (!(info->flags & IEEE80211_TX_CTL_AMPDU)) -- minstrel_aggr_check(mp, sta, skb); -+ minstrel_aggr_check(mp, mi, sta, skb); - } - } - ---- a/net/mac80211/rc80211_minstrel_ht.h -+++ b/net/mac80211/rc80211_minstrel_ht.h -@@ -109,6 +109,8 @@ struct minstrel_ht_sta { - - /* MCS rate group info and statistics */ - struct minstrel_mcs_group_data groups[MINSTREL_MAX_STREAMS * MINSTREL_STREAM_GROUPS]; -+ -+ unsigned long last_aggr_start_time[IEEE80211_QOS_CTL_TID_MASK + 1]; - }; - - struct minstrel_ht_sta_priv { |