summaryrefslogtreecommitdiff
path: root/include/uapi
diff options
context:
space:
mode:
authorMartin KaFai Lau <kafai@fb.com>2017-06-05 22:15:48 +0300
committerDavid S. Miller <davem@davemloft.net>2017-06-06 22:41:23 +0300
commit34ad5580f8f9c86cb273ebea25c149613cd1667e (patch)
tree47618c705d66fc9f0b977716cd7c1389e1552bdc /include/uapi
parentf3f1c054c288bb6e503005e6d73611151ed20e91 (diff)
downloadlinux-34ad5580f8f9c86cb273ebea25c149613cd1667e.tar.xz
bpf: Add BPF_(PROG|MAP)_GET_NEXT_ID command
This patch adds BPF_PROG_GET_NEXT_ID and BPF_MAP_GET_NEXT_ID to allow userspace to iterate all bpf_prog IDs and bpf_map IDs. The API is trying to be consistent with the existing BPF_MAP_GET_NEXT_KEY. It is currently limited to CAP_SYS_ADMIN which we can consider to lift it in followup patches. Signed-off-by: Martin KaFai Lau <kafai@fb.com> Acked-by: Alexei Starovoitov <ast@fb.com> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/uapi')
-rw-r--r--include/uapi/linux/bpf.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h
index e78aece03628..629747a3f273 100644
--- a/include/uapi/linux/bpf.h
+++ b/include/uapi/linux/bpf.h
@@ -82,6 +82,8 @@ enum bpf_cmd {
BPF_PROG_ATTACH,
BPF_PROG_DETACH,
BPF_PROG_TEST_RUN,
+ BPF_PROG_GET_NEXT_ID,
+ BPF_MAP_GET_NEXT_ID,
};
enum bpf_map_type {
@@ -209,6 +211,11 @@ union bpf_attr {
__u32 repeat;
__u32 duration;
} test;
+
+ struct { /* anonymous struct used by BPF_*_GET_NEXT_ID */
+ __u32 start_id;
+ __u32 next_id;
+ };
} __attribute__((aligned(8)));
/* BPF helper function descriptions: