aboutsummaryrefslogtreecommitdiffstats
path: root/net/xdp
diff options
context:
space:
mode:
authorDaniel Borkmann <daniel@iogearbox.net>2019-12-17 13:28:16 +0100
committerAlexei Starovoitov <ast@kernel.org>2019-12-17 08:58:02 -0800
commite47304232b373362228bf233f17bd12b11c9aafc (patch)
treeb08fea42367c08dec3f9190689f0a6c84dd84068 /net/xdp
parentbpf: Fix missing prog untrack in release_maps (diff)
downloadlinux-dev-e47304232b373362228bf233f17bd12b11c9aafc.tar.xz
linux-dev-e47304232b373362228bf233f17bd12b11c9aafc.zip
bpf: Fix cgroup local storage prog tracking
Recently noticed that we're tracking programs related to local storage maps through their prog pointer. This is a wrong assumption since the prog pointer can still change throughout the verification process, for example, whenever bpf_patch_insn_single() is called. Therefore, the prog pointer that was assigned via bpf_cgroup_storage_assign() is not guaranteed to be the same as we pass in bpf_cgroup_storage_release() and the map would therefore remain in busy state forever. Fix this by using the prog's aux pointer which is stable throughout verification and beyond. Fixes: de9cbbaadba5 ("bpf: introduce cgroup storage maps") Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Cc: Roman Gushchin <guro@fb.com> Cc: Martin KaFai Lau <kafai@fb.com> Link: https://lore.kernel.org/bpf/1471c69eca3022218666f909bc927a92388fd09e.1576580332.git.daniel@iogearbox.net
Diffstat (limited to 'net/xdp')
0 files changed, 0 insertions, 0 deletions