net: Fix potential memory leak in proto_register()
authorMiaohe Lin <linmiaohe@huawei.com>
Mon, 10 Aug 2020 12:16:58 +0000 (08:16 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Aug 2020 06:24:10 +0000 (08:24 +0200)
commit8212cbfb914760c0662dce083727ad5d13e30ffb
treeb451cef785bdf883aa7be6d844e8aa1aaff513fa
parentcfd8621aa997f595baeb09e2393a75da010010f3
net: Fix potential memory leak in proto_register()

[ Upstream commit 0f5907af39137f8183ed536aaa00f322d7365130 ]

If we failed to assign proto idx, we free the twsk_slab_name but forget to
free the twsk_slab. Add a helper function tw_prot_cleanup() to free these
together and also use this helper function in proto_unregister().

Fixes: b45ce32135d1 ("sock: fix potential memory leak in proto_register()")
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/core/sock.c