X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=blobdiff_plain;f=target%2Flinux%2Fgeneric%2Fbackport-4.9%2F024-8-tcp-tsq-move-tsq_flags-close-to-sk_wmem_alloc.patch;h=4a3f355b4d8ef2c9b069a6ec37eff7fd59caa8a3;hp=6604a20fcac507718c1b9aaa3b0e1c4523c0ab05;hb=5fde931d6071225e4383b33aaaa2131d49f55eee;hpb=886d66abcd92a6f2001865d8319504d72cd0d53e diff --git a/target/linux/generic/backport-4.9/024-8-tcp-tsq-move-tsq_flags-close-to-sk_wmem_alloc.patch b/target/linux/generic/backport-4.9/024-8-tcp-tsq-move-tsq_flags-close-to-sk_wmem_alloc.patch index 6604a20fca..4a3f355b4d 100644 --- a/target/linux/generic/backport-4.9/024-8-tcp-tsq-move-tsq_flags-close-to-sk_wmem_alloc.patch +++ b/target/linux/generic/backport-4.9/024-8-tcp-tsq-move-tsq_flags-close-to-sk_wmem_alloc.patch @@ -58,7 +58,7 @@ Signed-off-by: David S. Miller goto out; --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c -@@ -767,14 +767,15 @@ static void tcp_tasklet_func(unsigned lo +@@ -772,14 +772,15 @@ static void tcp_tasklet_func(unsigned lo list_for_each_safe(q, n, &list) { tp = list_entry(q, struct tcp_sock, tsq_node); list_del(&tp->tsq_node); @@ -77,7 +77,7 @@ Signed-off-by: David S. Miller tcp_tsq_handler(sk); } bh_unlock_sock(sk); -@@ -797,16 +798,15 @@ static void tcp_tasklet_func(unsigned lo +@@ -802,16 +803,15 @@ static void tcp_tasklet_func(unsigned lo */ void tcp_release_cb(struct sock *sk) { @@ -96,7 +96,7 @@ Signed-off-by: David S. Miller if (flags & TCPF_TSQ_DEFERRED) tcp_tsq_handler(sk); -@@ -878,7 +878,7 @@ void tcp_wfree(struct sk_buff *skb) +@@ -883,7 +883,7 @@ void tcp_wfree(struct sk_buff *skb) if (wmem >= SKB_TRUESIZE(1) && this_cpu_ksoftirqd() == current) goto out; @@ -105,7 +105,7 @@ Signed-off-by: David S. Miller struct tsq_tasklet *tsq; bool empty; -@@ -886,7 +886,7 @@ void tcp_wfree(struct sk_buff *skb) +@@ -891,7 +891,7 @@ void tcp_wfree(struct sk_buff *skb) goto out; nval = (oval & ~TSQF_THROTTLED) | TSQF_QUEUED | TCPF_TSQ_DEFERRED; @@ -114,7 +114,7 @@ Signed-off-by: David S. Miller if (nval != oval) continue; -@@ -2096,7 +2096,7 @@ static bool tcp_small_queue_check(struct +@@ -2136,7 +2136,7 @@ static bool tcp_small_queue_check(struct skb->prev == sk->sk_write_queue.next) return false; @@ -123,7 +123,7 @@ Signed-off-by: David S. Miller /* It is possible TX completion already happened * before we set TSQ_THROTTLED, so we must * test again the condition. -@@ -2194,8 +2194,8 @@ static bool tcp_write_xmit(struct sock * +@@ -2234,8 +2234,8 @@ static bool tcp_write_xmit(struct sock * unlikely(tso_fragment(sk, skb, limit, mss_now, gfp))) break; @@ -134,7 +134,7 @@ Signed-off-by: David S. Miller if (tcp_small_queue_check(sk, skb, 0)) break; -@@ -3508,8 +3508,6 @@ void tcp_send_ack(struct sock *sk) +@@ -3542,8 +3542,6 @@ void __tcp_send_ack(struct sock *sk, u32 /* We do not want pure acks influencing TCP Small Queues or fq/pacing * too much. * SKB_TRUESIZE(max(1 .. 66, MAX_TCP_HEADER)) is unfortunately ~784 @@ -145,7 +145,7 @@ Signed-off-by: David S. Miller --- a/net/ipv4/tcp_timer.c +++ b/net/ipv4/tcp_timer.c -@@ -311,7 +311,7 @@ static void tcp_delack_timer(unsigned lo +@@ -326,7 +326,7 @@ static void tcp_delack_timer(unsigned lo inet_csk(sk)->icsk_ack.blocked = 1; __NET_INC_STATS(sock_net(sk), LINUX_MIB_DELAYEDACKLOCKED); /* deleguate our work to tcp_release_cb() */ @@ -154,7 +154,7 @@ Signed-off-by: David S. Miller sock_hold(sk); } bh_unlock_sock(sk); -@@ -594,7 +594,7 @@ static void tcp_write_timer(unsigned lon +@@ -609,7 +609,7 @@ static void tcp_write_timer(unsigned lon tcp_write_timer_handler(sk); } else { /* delegate our work to tcp_release_cb() */