kernel-ark/kernel/bpf
Alexei Starovoitov f89b7755f5 bpf: split eBPF out of NET
introduce two configs:
- hidden CONFIG_BPF to select eBPF interpreter that classic socket filters
  depend on
- visible CONFIG_BPF_SYSCALL (default off) that tracing and sockets can use

that solves several problems:
- tracing and others that wish to use eBPF don't need to depend on NET.
  They can use BPF_SYSCALL to allow loading from userspace or select BPF
  to use it directly from kernel in NET-less configs.
- in 3.18 programs cannot be attached to events yet, so don't force it on
- when the rest of eBPF infra is there in 3.19+, it's still useful to
  switch it off to minimize kernel size

bloat-o-meter on x64 shows:
add/remove: 0/60 grow/shrink: 0/2 up/down: 0/-15601 (-15601)

tested with many different config combinations. Hopefully didn't miss anything.

Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
Acked-by: Daniel Borkmann <dborkman@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-10-27 19:09:59 -04:00
..
core.c bpf: split eBPF out of NET 2014-10-27 19:09:59 -04:00
Makefile bpf: split eBPF out of NET 2014-10-27 19:09:59 -04:00
syscall.c bpf: verifier (add ability to receive verification log) 2014-09-26 15:05:15 -04:00
test_stub.c bpf: mini eBPF library, test stubs and verifier testsuite 2014-09-26 15:05:15 -04:00
verifier.c bpf: fix bug in eBPF verifier 2014-10-21 21:43:46 -04:00