From: David S. Miller Date: Sun, 28 Sep 2014 20:35:49 +0000 (-0400) Subject: Merge branch 'tcp_skb_cb' X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=dc83d4d8f6c897022c974a00769b7a6efee6aed8;p=openwrt%2Fstaging%2Fblogic.git Merge branch 'tcp_skb_cb' Eric Dumazet says: ==================== tcp: better TCP_SKB_CB layout TCP had the assumption that IPCB and IP6CB are first members of skb->cb[] This is fine, except that IPCB/IP6CB are used in TCP for a very short time in input path. What really matters for TCP stack is to get skb->next, TCP_SKB_CB(skb)->seq, and TCP_SKB_CB(skb)->end_seq in the same cache line. skb that are immediately consumed do not care because whole skb->cb[] is hot in cpu cache, while skb that sit in wocket write queue or receive queues do not need TCP_SKB_CB(skb)->header at all. This patch set implements the prereq for IPv4, IPv6, and TCP to make this possible. This makes TCP more efficient. ==================== Signed-off-by: David S. Miller --- dc83d4d8f6c897022c974a00769b7a6efee6aed8