vxlan: fix byte order in hash function
Shift was wrong direction causing packets to hash based on other parts of the ethernet header, not the address. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
ef59febe3b
commit
321fb99139
@@ -228,9 +228,9 @@ static u32 eth_hash(const unsigned char *addr)
|
|||||||
|
|
||||||
/* only want 6 bytes */
|
/* only want 6 bytes */
|
||||||
#ifdef __BIG_ENDIAN
|
#ifdef __BIG_ENDIAN
|
||||||
value <<= 16;
|
|
||||||
#else
|
|
||||||
value >>= 16;
|
value >>= 16;
|
||||||
|
#else
|
||||||
|
value <<= 16;
|
||||||
#endif
|
#endif
|
||||||
return hash_64(value, FDB_HASH_BITS);
|
return hash_64(value, FDB_HASH_BITS);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user