diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-05-07 00:58:51 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-05-07 00:58:51 -0400 |
commit | 18e8c134f4e984e6639e62846345192816f06d5c (patch) | |
tree | 81bb46de14f020424716bd41915e831b07ce00c6 /include/linux/skbuff.h | |
parent | d6bc0149d8f2300bffa03ea6fea3ca39744277a6 (diff) |
net: Increase NET_SKB_PAD to 64 bytes
eth_type_trans() & get_rps_cpus() currently need two 64bytes cache
lines in packet to compute rxhash.
Increasing NET_SKB_PAD from 32 to 64 reduces the need to one cache
line only, and makes RPS faster.
NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/skbuff.h')
-rw-r--r-- | include/linux/skbuff.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 88d55395a27c..c9525bce80f6 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
@@ -1361,9 +1361,12 @@ static inline int skb_network_offset(const struct sk_buff *skb) | |||
1361 | * | 1361 | * |
1362 | * Various parts of the networking layer expect at least 32 bytes of | 1362 | * Various parts of the networking layer expect at least 32 bytes of |
1363 | * headroom, you should not reduce this. | 1363 | * headroom, you should not reduce this. |
1364 | * With RPS, we raised NET_SKB_PAD to 64 so that get_rps_cpus() fetches span | ||
1365 | * a 64 bytes aligned block to fit modern (>= 64 bytes) cache line sizes | ||
1366 | * NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8) | ||
1364 | */ | 1367 | */ |
1365 | #ifndef NET_SKB_PAD | 1368 | #ifndef NET_SKB_PAD |
1366 | #define NET_SKB_PAD 32 | 1369 | #define NET_SKB_PAD 64 |
1367 | #endif | 1370 | #endif |
1368 | 1371 | ||
1369 | extern int ___pskb_trim(struct sk_buff *skb, unsigned int len); | 1372 | extern int ___pskb_trim(struct sk_buff *skb, unsigned int len); |