tcp: Revert "tcp: remove header prediction"
This reverts commit45f119bf93
. Eric Dumazet says: We found at Google a significant regression caused by45f119bf93
tcp: remove header prediction In typical RPC (TCP_RR), when a TCP socket receives data, we now call tcp_ack() while we used to not call it. This touches enough cache lines to cause a slowdown. so problem does not seem to be HP removal itself but the tcp_ack() call. Therefore, it might be possible to remove HP after all, provided one finds a way to elide tcp_ack for most cases. Reported-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
c1d2b4c3e2
commit
31770e34e4
@@ -1963,8 +1963,10 @@ int tcp_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, int nonblock,
|
||||
tcp_rcv_space_adjust(sk);
|
||||
|
||||
skip_copy:
|
||||
if (tp->urg_data && after(tp->copied_seq, tp->urg_seq))
|
||||
if (tp->urg_data && after(tp->copied_seq, tp->urg_seq)) {
|
||||
tp->urg_data = 0;
|
||||
tcp_fast_path_check(sk);
|
||||
}
|
||||
if (used + offset < skb->len)
|
||||
continue;
|
||||
|
||||
|
Reference in New Issue
Block a user