From: Bud Grise Date: Wed, 24 Feb 2016 21:14:22 +0000 (-0500) Subject: Add rotates to v6 worker hash to prevent SIP/DIP synchronizing. X-Git-Tag: v16.06-rc1~272 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=8fbd37edacf3bc95b06d6fa620e28a08b0b0905f;p=vpp.git Add rotates to v6 worker hash to prevent SIP/DIP synchronizing. Change-Id: Ibe8ec6271b3f04290a60c0145e59a01d3130500f Signed-off-by: Todd Foggoa (tfoggoa) --- diff --git a/vnet/vnet/devices/dpdk/node.c b/vnet/vnet/devices/dpdk/node.c index b9815706169..72d564ba8b2 100644 --- a/vnet/vnet/devices/dpdk/node.c +++ b/vnet/vnet/devices/dpdk/node.c @@ -963,9 +963,9 @@ static inline u64 ipv6_get_key (ip6_header_t *ip) u64 hash_key; hash_key = ip->src_address.as_u64[0] ^ - ip->src_address.as_u64[1] ^ - ip->dst_address.as_u64[0] ^ - ip->dst_address.as_u64[1] ^ + rotate_left(ip->src_address.as_u64[1],13) ^ + rotate_left(ip->dst_address.as_u64[0],26) ^ + rotate_left(ip->dst_address.as_u64[1],39) ^ ip->protocol; return hash_key;