linux/kernel/bpf
Daniel Mack 3007098494 cgroup: add support for eBPF programs
This patch adds two sets of eBPF program pointers to struct cgroup.
One for such that are directly pinned to a cgroup, and one for such
that are effective for it.

To illustrate the logic behind that, assume the following example
cgroup hierarchy.

  A - B - C
        \ D - E

If only B has a program attached, it will be effective for B, C, D
and E. If D then attaches a program itself, that will be effective for
both D and E, and the program in B will only affect B and C. Only one
program of a given type is effective for a cgroup.

Attaching and detaching programs will be done through the bpf(2)
syscall. For now, ingress and egress inet socket filtering are the
only supported use-cases.

Signed-off-by: Daniel Mack <daniel@zonque.org>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-25 16:25:52 -05:00
..
arraymap.c bpf: Add bpf_current_task_under_cgroup helper 2016-08-12 21:49:41 -07:00
bpf_lru_list.c bpf: Fix compilation warning in __bpf_lru_list_rotate_inactive 2016-11-16 11:30:56 -05:00
bpf_lru_list.h bpf: Add percpu LRU list 2016-11-15 11:50:20 -05:00
cgroup.c cgroup: add support for eBPF programs 2016-11-25 16:25:52 -05:00
core.c bpf: add helper for retrieving current numa node id 2016-10-22 17:05:52 -04:00
hashtab.c bpf: Add BPF_MAP_TYPE_LRU_PERCPU_HASH 2016-11-15 11:50:20 -05:00
helpers.c bpf: add helper for retrieving current numa node id 2016-10-22 17:05:52 -04:00
inode.c bpf, inode: add support for symlinks and fix mtime/ctime 2016-10-31 15:28:11 -04:00
Makefile cgroup: add support for eBPF programs 2016-11-25 16:25:52 -05:00
percpu_freelist.c bpf: introduce percpu_freelist 2016-03-08 15:28:31 -05:00
percpu_freelist.h bpf: introduce percpu_freelist 2016-03-08 15:28:31 -05:00
stackmap.c bpf: add BPF_CALL_x macros for declaring helpers 2016-09-09 19:36:04 -07:00
syscall.c bpf, mlx5: fix mlx5e_create_rq taking reference on prog 2016-11-21 11:25:57 -05:00
verifier.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-11-22 13:27:16 -05:00