summaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/bpf.h
diff options
context:
space:
mode:
authorDaniel Borkmann2016-04-18 21:01:23 +0200
committerDavid S. Miller2016-04-20 02:26:11 +0200
commit1e33759c788c78f31d4d6f65bac647b23624734c (patch)
tree6fe7627843e67fab42dd888d109f1de03040012d /include/uapi/linux/bpf.h
parentarcnet: com90xx: add __init attribute (diff)
downloadkernel-qcow2-linux-1e33759c788c78f31d4d6f65bac647b23624734c.tar.gz
kernel-qcow2-linux-1e33759c788c78f31d4d6f65bac647b23624734c.tar.xz
kernel-qcow2-linux-1e33759c788c78f31d4d6f65bac647b23624734c.zip
bpf, trace: add BPF_F_CURRENT_CPU flag for bpf_perf_event_output
Add a BPF_F_CURRENT_CPU flag to optimize the use-case where user space has per-CPU ring buffers and the eBPF program pushes the data into the current CPU's ring buffer which saves us an extra helper function call in eBPF. Also, make sure to properly reserve the remaining flags which are not used. Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi/linux/bpf.h')
-rw-r--r--include/uapi/linux/bpf.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h
index 70eda5aeb304..b7b0fb1292e7 100644
--- a/include/uapi/linux/bpf.h
+++ b/include/uapi/linux/bpf.h
@@ -347,6 +347,10 @@ enum bpf_func_id {
#define BPF_F_ZERO_CSUM_TX (1ULL << 1)
#define BPF_F_DONT_FRAGMENT (1ULL << 2)
+/* BPF_FUNC_perf_event_output flags. */
+#define BPF_F_INDEX_MASK 0xffffffffULL
+#define BPF_F_CURRENT_CPU BPF_F_INDEX_MASK
+
/* user accessible mirror of in-kernel sk_buff.
* new fields can only be added to the end of this structure
*/