aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tools/include
diff options
context:
space:
mode:
authorYonghong Song <yhs@fb.com>2020-08-27 22:19:22 -0700
committerDaniel Borkmann <daniel@iogearbox.net>2020-08-28 14:33:24 +0200
commitb0c9eb37817943840a1a82dbc998c491609a0afd (patch)
treeba3ab56b0661dd01c0de5432e344c975ff4495ff /tools/include
parenttools, bpf/build: Cleanup feature files on make clean (diff)
downloadwireguard-linux-b0c9eb37817943840a1a82dbc998c491609a0afd.tar.xz
wireguard-linux-b0c9eb37817943840a1a82dbc998c491609a0afd.zip
bpf: Make bpf_link_info.iter similar to bpf_iter_link_info
bpf_link_info.iter is used by link_query to return bpf_iter_link_info to user space. Fields may be different, e.g., map_fd vs. map_id, so we cannot reuse the exact structure. But make them similar, e.g., struct bpf_link_info { /* common fields */ union { struct { ... } raw_tracepoint; struct { ... } tracing; ... struct { /* common fields for iter */ union { struct { __u32 map_id; } map; /* other structs for other targets */ }; }; }; }; so the structure is extensible the same way as bpf_iter_link_info. Fixes: 6b0a249a301e ("bpf: Implement link_query for bpf iterators") Signed-off-by: Yonghong Song <yhs@fb.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Andrii Nakryiko <andriin@fb.com> Link: https://lore.kernel.org/bpf/20200828051922.758950-1-yhs@fb.com
Diffstat (limited to 'tools/include')
-rw-r--r--tools/include/uapi/linux/bpf.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/include/uapi/linux/bpf.h b/tools/include/uapi/linux/bpf.h
index 0388bc0200b0..ef7af384f5ee 100644
--- a/tools/include/uapi/linux/bpf.h
+++ b/tools/include/uapi/linux/bpf.h
@@ -4251,8 +4251,10 @@ struct bpf_link_info {
__aligned_u64 target_name; /* in/out: target_name buffer ptr */
__u32 target_name_len; /* in/out: target_name buffer len */
union {
- __u32 map_id;
- } map;
+ struct {
+ __u32 map_id;
+ } map;
+ };
} iter;
struct {
__u32 netns_ino;