mac80211: tweak TSQ settings
authorFelix Fietkau <nbd@nbd.name>
Thu, 16 Nov 2017 08:57:13 +0000 (09:57 +0100)
committerFelix Fietkau <nbd@nbd.name>
Wed, 29 Nov 2017 16:46:41 +0000 (17:46 +0100)
Latencies can be much higher on wifi devices, especially with
aggregation. Tune the network stack setting introduced in the previous
commit to account for that.
This commit reintroduces the previously reverted one with a fix for the
crash issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
package/kernel/mac80211/patches/140-tweak-TSQ-setting.patch [new file with mode: 0644]
package/kernel/mac80211/patches/307-mac80211-add-hdrlen-to-ieee80211_tx_data.patch

diff --git a/package/kernel/mac80211/patches/140-tweak-TSQ-setting.patch b/package/kernel/mac80211/patches/140-tweak-TSQ-setting.patch
new file mode 100644 (file)
index 0000000..6e9a07a
--- /dev/null
@@ -0,0 +1,15 @@
+--- a/net/mac80211/tx.c
++++ b/net/mac80211/tx.c
+@@ -3750,6 +3750,12 @@ out:
+ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
+                                      struct net_device *dev)
+ {
++#if defined(sk_pacing_shift) || LINUX_VERSION_IS_GEQ(4,15,0)
++      if (skb->sk && sk_fullsock(skb->sk) &&
++          skb->sk->sk_pacing_shift != 6)
++              skb->sk->sk_pacing_shift = 6;
++#endif
++
+       if (unlikely(ieee80211_multicast_to_unicast(skb, dev))) {
+               struct sk_buff_head queue;
index 934e2e1..83c6134 100644 (file)
@@ -56,7 +56,7 @@ Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
  
        if (txq->sta)
                tx.sta = container_of(txq->sta, struct sta_info, sta);
-@@ -3790,6 +3791,7 @@ ieee80211_build_data_template(struct iee
+@@ -3796,6 +3797,7 @@ ieee80211_build_data_template(struct iee
        hdr = (void *)skb->data;
        tx.sta = sta_info_get(sdata, hdr->addr1);
        tx.skb = skb;