[NET] NETNS: Omit sock->sk_net without CONFIG_NET_NS.
Introduce per-sock inlines: sock_net(), sock_net_set() and per-inet_timewait_sock inlines: twsk_net(), twsk_net_set(). Without CONFIG_NET_NS, no namespace other than &init_net exists. Let's explicitly define them to help compiler optimizations. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
This commit is contained in:
@@ -70,7 +70,7 @@ static struct sock *__udp6_lib_lookup(struct net *net,
|
||||
sk_for_each(sk, node, &udptable[hnum & (UDP_HTABLE_SIZE - 1)]) {
|
||||
struct inet_sock *inet = inet_sk(sk);
|
||||
|
||||
if (sk->sk_net == net && sk->sk_hash == hnum &&
|
||||
if (sock_net(sk) == net && sk->sk_hash == hnum &&
|
||||
sk->sk_family == PF_INET6) {
|
||||
struct ipv6_pinfo *np = inet6_sk(sk);
|
||||
int score = 0;
|
||||
@@ -323,7 +323,7 @@ static struct sock *udp_v6_mcast_next(struct sock *sk,
|
||||
sk_for_each_from(s, node) {
|
||||
struct inet_sock *inet = inet_sk(s);
|
||||
|
||||
if (s->sk_net != sk->sk_net)
|
||||
if (sock_net(s) != sock_net(sk))
|
||||
continue;
|
||||
|
||||
if (s->sk_hash == num && s->sk_family == PF_INET6) {
|
||||
|
Reference in New Issue
Block a user