|
@@ -68,7 +68,7 @@ struct sock *__inet6_lookup_established(struct net *net,
|
|
|
/* Optimize here for direct hit, only listening connections can
|
|
|
* have wildcards anyways.
|
|
|
*/
|
|
|
- unsigned int hash = inet6_ehashfn(daddr, hnum, saddr, sport);
|
|
|
+ unsigned int hash = inet6_ehashfn(net, daddr, hnum, saddr, sport);
|
|
|
struct inet_ehash_bucket *head = inet_ehash_bucket(hashinfo, hash);
|
|
|
rwlock_t *lock = inet_ehash_lockp(hashinfo, hash);
|
|
|
|
|
@@ -166,14 +166,14 @@ static int __inet6_check_established(struct inet_timewait_death_row *death_row,
|
|
|
const struct in6_addr *saddr = &np->daddr;
|
|
|
const int dif = sk->sk_bound_dev_if;
|
|
|
const __portpair ports = INET_COMBINED_PORTS(inet->dport, lport);
|
|
|
- const unsigned int hash = inet6_ehashfn(daddr, lport, saddr,
|
|
|
+ struct net *net = sock_net(sk);
|
|
|
+ const unsigned int hash = inet6_ehashfn(net, daddr, lport, saddr,
|
|
|
inet->dport);
|
|
|
struct inet_ehash_bucket *head = inet_ehash_bucket(hinfo, hash);
|
|
|
rwlock_t *lock = inet_ehash_lockp(hinfo, hash);
|
|
|
struct sock *sk2;
|
|
|
const struct hlist_node *node;
|
|
|
struct inet_timewait_sock *tw;
|
|
|
- struct net *net = sock_net(sk);
|
|
|
|
|
|
prefetch(head->chain.first);
|
|
|
write_lock(lock);
|