]> git.baikalelectronics.ru Git - kernel.git/commit
bpf, netns: Keep a list of attached bpf_link's
authorJakub Sitnicki <jakub@cloudflare.com>
Thu, 25 Jun 2020 14:13:56 +0000 (16:13 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 30 Jun 2020 17:45:08 +0000 (10:45 -0700)
commit91da290069c7cbd555ef2b2af021eeee476cdbbb
treea40a6f6aacc3e55888d939cf640ca754de98126f
parent015efbf7ddef1aaf687c7e99ab27c08eae104318
bpf, netns: Keep a list of attached bpf_link's

To support multi-prog link-based attachments for new netns attach types, we
need to keep track of more than one bpf_link per attach type. Hence,
convert net->bpf.links into a list, that currently can be either empty or
have just one item.

Instead of reusing bpf_prog_list from bpf-cgroup, we link together
bpf_netns_link's themselves. This makes list management simpler as we don't
have to allocate, initialize, and later release list elements. We can do
this because multi-prog attachment will be available only for bpf_link, and
we don't need to build a list of programs attached directly and indirectly
via links.

No functional changes intended.

Signed-off-by: Jakub Sitnicki <jakub@cloudflare.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andriin@fb.com>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Link: https://lore.kernel.org/bpf/20200625141357.910330-4-jakub@cloudflare.com
include/net/netns/bpf.h
kernel/bpf/net_namespace.c