/* TCP Small Queues :
- * Control number of packets in qdisc/devices to two packets / or ~1 ms.
+ * Control number of packets in qdisc/devices to two packets / or ~4 ms.
* (These limits are doubled for retransmits)
* This allows for :
* - better RTT estimation and ACK scheduling
@@ -2173,7 +2173,7 @@ static bool tcp_small_queue_check(struct sock *sk, const struct sk_buff *skb,
{
unsigned int limit;
skb_orphan() is not the way to go.
Can someone try the following patch ?
diff --git a/net/ipv4/ tcp_output. c b/net/ipv4/ tcp_output. c ecfbf9b47d51cff 698e97cd2f. .5f394f2f524f6a c8d8d9bef50a1bf c99397d6724 100644 tcp_output. c tcp_output. c check(const struct sock *sk)
index 4e985dea1dd24fd
--- a/net/ipv4/
+++ b/net/ipv4/
@@ -2158,7 +2158,7 @@ static bool tcp_pacing_
}
/* TCP Small Queues : queue_check( struct sock *sk, const struct sk_buff *skb,
- * Control number of packets in qdisc/devices to two packets / or ~1 ms.
+ * Control number of packets in qdisc/devices to two packets / or ~4 ms.
* (These limits are doubled for retransmits)
* This allows for :
* - better RTT estimation and ACK scheduling
@@ -2173,7 +2173,7 @@ static bool tcp_small_
{
unsigned int limit;
- limit = max(2 * skb->truesize, sk->sk_pacing_rate >> 10); tcp_limit_ output_ bytes);
+ limit = max(2 * skb->truesize, sk->sk_pacing_rate >> 8);
limit = min_t(u32, limit, sysctl_
limit <<= factor;