]> git.itanic.dy.fi Git - linux-stable/commitdiff
netlink: remove hash::nelems check in netlink_insert
authorLi RongQing <lirongqing@baidu.com>
Tue, 11 Sep 2018 01:05:01 +0000 (09:05 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 6 Feb 2023 06:49:42 +0000 (07:49 +0100)
[ Upstream commit 0041195d55bc38df6b574cc8c36dcf2266fbee39 ]

The type of hash::nelems has been changed from size_t to atom_t
which in fact is int, so not need to check if BITS_PER_LONG, that
is bit number of size_t, is bigger than 32

and rht_grow_above_max() will be called to check if hashtable is
too big, ensure it can not bigger than 1<<31

Signed-off-by: Zhang Yu <zhangyu31@baidu.com>
Signed-off-by: Li RongQing <lirongqing@baidu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: c1bb9484e3b0 ("netlink: annotate data races around nlk->portid")
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/netlink/af_netlink.c

index 6ffa83319d08bbce71c3e0cda0c212aa23395ef0..966c709c3831e0cdfb32e28ca22efd31104e1552 100644 (file)
@@ -578,11 +578,6 @@ static int netlink_insert(struct sock *sk, u32 portid)
        if (nlk_sk(sk)->bound)
                goto err;
 
-       err = -ENOMEM;
-       if (BITS_PER_LONG > 32 &&
-           unlikely(atomic_read(&table->hash.nelems) >= UINT_MAX))
-               goto err;
-
        nlk_sk(sk)->portid = portid;
        sock_hold(sk);