]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
bpf: Fix map leak in HASH_OF_MAPS map
authorAndrii Nakryiko <andriin@fb.com>
Wed, 29 Jul 2020 04:09:12 +0000 (21:09 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 5 Aug 2020 07:58:45 +0000 (09:58 +0200)
commit82547aa3a8da8b672dd6c26a70d09d32d9bb6296
treed5ee9170a1b63b2244865778e93d66ef6918dc53
parent30007e098da0becf77c9974690c8af69faa4e247
bpf: Fix map leak in HASH_OF_MAPS map

[ Upstream commit 1d4e1eab456e1ee92a94987499b211db05f900ea ]

Fix HASH_OF_MAPS bug of not putting inner map pointer on bpf_map_elem_update()
operation. This is due to per-cpu extra_elems optimization, which bypassed
free_htab_elem() logic doing proper clean ups. Make sure that inner map is put
properly in optimized case as well.

Fixes: 8c290e60fa2a ("bpf: fix hashmap extra_elems logic")
Signed-off-by: Andrii Nakryiko <andriin@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Song Liu <songliubraving@fb.com>
Link: https://lore.kernel.org/bpf/20200729040913.2815687-1-andriin@fb.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
kernel/bpf/hashtab.c