]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ipv4: Retire global IPv4 hash table inet_addr_lst.
authorKuniyuki Iwashima <kuniyu@amazon.com>
Tue, 8 Oct 2024 17:29:06 +0000 (10:29 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 10 Oct 2024 03:08:08 +0000 (20:08 -0700)
No one uses inet_addr_lst anymore, so let's remove it.

Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Link: https://patch.msgid.link/20241008172906.1326-5-kuniyu@amazon.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
include/linux/inetdevice.h
net/ipv4/devinet.c

index d0c2bf67a9b06c21b5acc157825ea6f1f958b0b6..d9c690c8c80b1cffb9f35589e9b5cf7da2f5578e 100644 (file)
@@ -141,7 +141,6 @@ static inline void ipv4_devconf_setall(struct in_device *in_dev)
                                                          ARP_EVICT_NOCARRIER)
 
 struct in_ifaddr {
-       struct hlist_node       hash;
        struct hlist_node       addr_lst;
        struct in_ifaddr        __rcu *ifa_next;
        struct in_device        *ifa_dev;
index ac245944e89e40ea16f88b08f27438d4d9c247e8..7c156f85b7d25b114bf41cf598d1ef7634a93bee 100644 (file)
@@ -119,8 +119,6 @@ struct inet_fill_args {
 #define IN4_ADDR_HSIZE_SHIFT   8
 #define IN4_ADDR_HSIZE         (1U << IN4_ADDR_HSIZE_SHIFT)
 
-static struct hlist_head inet_addr_lst[IN4_ADDR_HSIZE];
-
 static u32 inet_addr_hash(const struct net *net, __be32 addr)
 {
        u32 val = (__force u32) addr ^ net_hash_mix(net);
@@ -133,7 +131,6 @@ static void inet_hash_insert(struct net *net, struct in_ifaddr *ifa)
        u32 hash = inet_addr_hash(net, ifa->ifa_local);
 
        ASSERT_RTNL();
-       hlist_add_head_rcu(&ifa->hash, &inet_addr_lst[hash]);
        hlist_add_head_rcu(&ifa->addr_lst, &net->ipv4.inet_addr_lst[hash]);
 }
 
@@ -141,7 +138,6 @@ static void inet_hash_remove(struct in_ifaddr *ifa)
 {
        ASSERT_RTNL();
        hlist_del_init_rcu(&ifa->addr_lst);
-       hlist_del_init_rcu(&ifa->hash);
 }
 
 /**
@@ -228,7 +224,6 @@ static struct in_ifaddr *inet_alloc_ifa(struct in_device *in_dev)
        in_dev_hold(in_dev);
        ifa->ifa_dev = in_dev;
 
-       INIT_HLIST_NODE(&ifa->hash);
        INIT_HLIST_NODE(&ifa->addr_lst);
 
        return ifa;
@@ -2804,11 +2799,6 @@ static struct rtnl_af_ops inet_af_ops __read_mostly = {
 
 void __init devinet_init(void)
 {
-       int i;
-
-       for (i = 0; i < IN4_ADDR_HSIZE; i++)
-               INIT_HLIST_HEAD(&inet_addr_lst[i]);
-
        register_pernet_subsys(&devinet_ops);
        register_netdevice_notifier(&ip_netdev_notifier);