aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/netns
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2022-02-07 20:50:28 -0800
committerJakub Kicinski <kuba@kernel.org>2022-02-08 20:41:32 -0800
commit21a216a8fc630161e69eaf02cbebdd1816ff1a13 (patch)
tree95881822e7dbc13dd7bf9cd87502e98fd03a3f54 /include/net/netns
parentnet: add dev->dev_registered_tracker (diff)
downloadlinux-dev-21a216a8fc630161e69eaf02cbebdd1816ff1a13.tar.xz
linux-dev-21a216a8fc630161e69eaf02cbebdd1816ff1a13.zip
ipv6/addrconf: allocate a per netns hash table
Add a per netns hash table and a dedicated spinlock, first step to get rid of the global inet6_addr_lst[] one. Signed-off-by: Eric Dumazet <edumazet@google.com> Reviewed-by: David Ahern <dsahern@kernel.org> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include/net/netns')
-rw-r--r--include/net/netns/ipv6.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/net/netns/ipv6.h b/include/net/netns/ipv6.h
index 30cdfc4e1615..755f12001c8b 100644
--- a/include/net/netns/ipv6.h
+++ b/include/net/netns/ipv6.h
@@ -92,6 +92,10 @@ struct netns_ipv6 {
struct sock *tcp_sk;
struct sock *igmp_sk;
struct sock *mc_autojoin_sk;
+
+ struct hlist_head *inet6_addr_lst;
+ spinlock_t addrconf_hash_lock;
+
#ifdef CONFIG_IPV6_MROUTE
#ifndef CONFIG_IPV6_MROUTE_MULTIPLE_TABLES
struct mr_table *mrt6;