Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[linux-2.6-block.git] / net / mac80211 / tx.c
index 7643178ef13246840a5c2b9b5aacc370c06b5a94..933c67b5f84572e599e758b8d7e9b3706470f507 100644 (file)
@@ -3569,6 +3569,14 @@ void __ieee80211_subif_start_xmit(struct sk_buff *skb,
        if (!IS_ERR_OR_NULL(sta)) {
                struct ieee80211_fast_tx *fast_tx;
 
+               /* We need a bit of data queued to build aggregates properly, so
+                * instruct the TCP stack to allow more than a single ms of data
+                * to be queued in the stack. The value is a bit-shift of 1
+                * second, so 8 is ~4ms of queued data. Only affects local TCP
+                * sockets.
+                */
+               sk_pacing_shift_update(skb->sk, 8);
+
                fast_tx = rcu_dereference(sta->fast_tx);
 
                if (fast_tx &&