forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-10 cde9070d9970eef1f7ec2360586c802a16230ad8
kernel/tools/bpf/bpftool/xlated_dumper.h
....@@ -1,44 +1,12 @@
1
-// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2
-/*
3
- * Copyright (C) 2018 Netronome Systems, Inc.
4
- *
5
- * This software is dual licensed under the GNU General License Version 2,
6
- * June 1991 as shown in the file COPYING in the top-level directory of this
7
- * source tree or the BSD 2-Clause License provided below. You have the
8
- * option to license this software under the complete terms of either license.
9
- *
10
- * The BSD 2-Clause License:
11
- *
12
- * Redistribution and use in source and binary forms, with or
13
- * without modification, are permitted provided that the following
14
- * conditions are met:
15
- *
16
- * 1. Redistributions of source code must retain the above
17
- * copyright notice, this list of conditions and the following
18
- * disclaimer.
19
- *
20
- * 2. Redistributions in binary form must reproduce the above
21
- * copyright notice, this list of conditions and the following
22
- * disclaimer in the documentation and/or other materials
23
- * provided with the distribution.
24
- *
25
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
29
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35
- * POSSIBILITY OF SUCH DAMAGE.
36
- */
1
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2
+/* Copyright (C) 2018 Netronome Systems, Inc. */
373
384 #ifndef __BPF_TOOL_XLATED_DUMPER_H
395 #define __BPF_TOOL_XLATED_DUMPER_H
406
417 #define SYM_MAX_NAME 256
8
+
9
+struct bpf_prog_linfo;
4210
4311 struct kernel_sym {
4412 unsigned long address;
....@@ -51,6 +19,10 @@
5119 __u32 sym_count;
5220 __u64 *jited_ksyms;
5321 __u32 nr_jited_ksyms;
22
+ struct btf *btf;
23
+ void *func_info;
24
+ __u32 finfo_rec_size;
25
+ const struct bpf_prog_linfo *prog_linfo;
5426 char scratch_buff[SYM_MAX_NAME + 8];
5527 };
5628
....@@ -58,9 +30,9 @@
5830 void kernel_syms_destroy(struct dump_data *dd);
5931 struct kernel_sym *kernel_syms_search(struct dump_data *dd, unsigned long key);
6032 void dump_xlated_json(struct dump_data *dd, void *buf, unsigned int len,
61
- bool opcodes);
33
+ bool opcodes, bool linum);
6234 void dump_xlated_plain(struct dump_data *dd, void *buf, unsigned int len,
63
- bool opcodes);
35
+ bool opcodes, bool linum);
6436 void dump_xlated_for_graph(struct dump_data *dd, void *buf, void *buf_end,
6537 unsigned int start_index);
6638