bpf: tools: Sync uapi bpf.h
authorMartin KaFai Lau <kafai@fb.com>
Sat, 8 Dec 2018 00:42:26 +0000 (16:42 -0800)
committerAlexei Starovoitov <ast@kernel.org>
Sun, 9 Dec 2018 21:54:38 +0000 (13:54 -0800)
Sync uapi bpf.h to tools/include/uapi/linux for
the new bpf_line_info.

Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Acked-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/include/uapi/linux/bpf.h

index 16263e8827fcd0e972ef508ffa9dc75535029c48..7973c28b24a02f63b8a5788c378aa605a354161d 100644 (file)
@@ -356,6 +356,9 @@ union bpf_attr {
                __u32           func_info_rec_size;     /* userspace bpf_func_info size */
                __aligned_u64   func_info;      /* func info */
                __u32           func_info_cnt;  /* number of bpf_func_info records */
+               __u32           line_info_rec_size;     /* userspace bpf_line_info size */
+               __aligned_u64   line_info;      /* line info */
+               __u32           line_info_cnt;  /* number of bpf_line_info records */
        };
 
        struct { /* anonymous struct used by BPF_OBJ_* commands */
@@ -2679,6 +2682,12 @@ struct bpf_prog_info {
        __u32 func_info_rec_size;
        __aligned_u64 func_info;
        __u32 func_info_cnt;
+       __u32 line_info_cnt;
+       __aligned_u64 line_info;
+       __aligned_u64 jited_line_info;
+       __u32 jited_line_info_cnt;
+       __u32 line_info_rec_size;
+       __u32 jited_line_info_rec_size;
 } __attribute__((aligned(8)));
 
 struct bpf_map_info {
@@ -2995,4 +3004,14 @@ struct bpf_func_info {
        __u32   type_id;
 };
 
+#define BPF_LINE_INFO_LINE_NUM(line_col)       ((line_col) >> 10)
+#define BPF_LINE_INFO_LINE_COL(line_col)       ((line_col) & 0x3ff)
+
+struct bpf_line_info {
+       __u32   insn_off;
+       __u32   file_name_off;
+       __u32   line_off;
+       __u32   line_col;
+};
+
 #endif /* _UAPI__LINUX_BPF_H__ */