|
|
|
@ -876,3 +876,18 @@ |
|
|
|
|
|
|
|
|
|
fragment = 0;
|
|
|
|
|
ptr = ip6hoff + sizeof(struct ipv6hdr);
|
|
|
|
|
--- a/include/net/neighbour.h
|
|
|
|
|
+++ b/include/net/neighbour.h
|
|
|
|
|
@@ -262,8 +262,10 @@ static inline bool neigh_key_eq128(const
|
|
|
|
|
const u32 *n32 = (const u32 *)n->primary_key;
|
|
|
|
|
const u32 *p32 = pkey;
|
|
|
|
|
|
|
|
|
|
- return ((n32[0] ^ p32[0]) | (n32[1] ^ p32[1]) |
|
|
|
|
|
- (n32[2] ^ p32[2]) | (n32[3] ^ p32[3])) == 0;
|
|
|
|
|
+ return ((n32[0] ^ net_hdr_word(&p32[0])) |
|
|
|
|
|
+ (n32[1] ^ net_hdr_word(&p32[1])) |
|
|
|
|
|
+ (n32[2] ^ net_hdr_word(&p32[2])) |
|
|
|
|
|
+ (n32[3] ^ net_hdr_word(&p32[3]))) == 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static inline struct neighbour *___neigh_lookup_noref(
|
|
|
|
|