linux/tools/bpf/bpftool
Sandipan Das f84192ee00 tools: bpftool: resolve calls without using imm field
Currently, we resolve the callee's address for a JITed function
call by using the imm field of the call instruction as an offset
from __bpf_call_base. If bpf_jit_kallsyms is enabled, we further
use this address to get the callee's kernel symbol's name.

For some architectures, such as powerpc64, the imm field is not
large enough to hold this offset. So, instead of assigning this
offset to the imm field, the verifier now assigns the subprog
id. Also, a list of kernel symbol addresses for all the JITed
functions is provided in the program info. We now use the imm
field as an index for this list to lookup a callee's symbol's
address and resolve its name.

Suggested-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Sandipan Das <sandipan@linux.vnet.ibm.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2018-05-24 09:20:49 +02:00
..
bash-completion tools: bpftool: add simple perf event output reader 2018-05-04 23:41:04 +02:00
Documentation tools: bpftool: add simple perf event output reader 2018-05-04 23:41:04 +02:00
.gitignore selftests/bpf: ignore build products 2018-05-10 00:41:06 +02:00
cfg.c tools: bpftool: generate .dot graph from CFG information 2018-03-01 18:29:49 -08:00
cfg.h tools: bpftool: detect sub-programs from the eBPF sequence 2018-03-01 18:29:48 -08:00
cgroup.c bpftool: Support new prog types and attach types 2018-04-18 14:39:24 +02:00
common.c tools: bpftool: add simple perf event output reader 2018-05-04 23:41:04 +02:00
jit_disasm.c tools: bpftool: improve architecture detection by using ifindex 2018-01-18 01:26:15 +01:00
json_writer.c tools: bpftool: add JSON output for bpftool prog dump xlated * command 2017-10-24 01:25:08 +01:00
json_writer.h tools: bpftool: add JSON output for bpftool prog dump xlated * command 2017-10-24 01:25:08 +01:00
main.c tools: bpftool: add support for quotations in batch files 2018-03-02 09:46:41 +01:00
main.h tools: bpftool: add simple perf event output reader 2018-05-04 23:41:04 +02:00
Makefile tools: bpftool: add simple perf event output reader 2018-05-04 23:41:04 +02:00
map_perf_ring.c tools: bpf: move the event reading loop to libbpf 2018-05-11 01:40:52 +02:00
map.c bpf: bpftool, support for sockhash 2018-05-16 22:00:21 +02:00
prog.c tools: bpftool: resolve calls without using imm field 2018-05-24 09:20:49 +02:00
xlated_dumper.c tools: bpftool: resolve calls without using imm field 2018-05-24 09:20:49 +02:00
xlated_dumper.h tools: bpftool: resolve calls without using imm field 2018-05-24 09:20:49 +02:00