mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-05-24 10:39:52 +00:00

In order to: (1) attach more than one BPF program type to netns, or (2) support attaching BPF programs to netns with bpf_link, or (3) support multi-prog attach points for netns we will need to keep more state per netns than a single pointer like we have now for BPF flow dissector program. Prepare for the above by extracting netns_bpf that is part of struct net, for storing all state related to BPF programs attached to netns. Turn flow dissector callbacks for querying/attaching/detaching a program into generic ones that operate on netns_bpf. Next patch will move the generic callbacks into their own module. This is similar to how it is organized for cgroup with cgroup_bpf. Signed-off-by: Jakub Sitnicki <jakub@cloudflare.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Cc: Stanislav Fomichev <sdf@google.com> Link: https://lore.kernel.org/bpf/20200531082846.2117903-3-jakub@cloudflare.com
17 lines
300 B
C
17 lines
300 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* BPF programs attached to network namespace
|
|
*/
|
|
|
|
#ifndef __NETNS_BPF_H__
|
|
#define __NETNS_BPF_H__
|
|
|
|
#include <linux/bpf-netns.h>
|
|
|
|
struct bpf_prog;
|
|
|
|
struct netns_bpf {
|
|
struct bpf_prog __rcu *progs[MAX_NETNS_BPF_ATTACH_TYPE];
|
|
};
|
|
|
|
#endif /* __NETNS_BPF_H__ */
|