ebpf: add prandom helper for packet sampling
authorDaniel Borkmann <daniel@iogearbox.net>
Sat, 14 Mar 2015 01:27:16 +0000 (02:27 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 16 Mar 2015 01:57:25 +0000 (21:57 -0400)
commit03e69b508b6f7c51743055c9f61d1dfeadf4b635
tree4c9199cde0fe876871e20352666d40721d4c1d5f
parent12028820423bd7705beb5e09889faab95c545ea1
ebpf: add prandom helper for packet sampling

This work is similar to commit 4cd3675ebf74 ("filter: added BPF
random opcode") and adds a possibility for packet sampling in eBPF.

Currently, this is only possible in classic BPF and useful to
combine sampling with f.e. packet sockets, possible also with tc.

Example function proto-type looks like:

  u32 (*prandom_u32)(void) = (void *)BPF_FUNC_get_prandom_u32;

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/bpf.h
include/uapi/linux/bpf.h
kernel/bpf/core.c
kernel/bpf/helpers.c
net/core/filter.c