diff options
author | Alexei Starovoitov <ast@fb.com> | 2017-12-14 17:55:10 -0800 |
---|---|---|
committer | Daniel Borkmann <daniel@iogearbox.net> | 2017-12-17 20:34:35 +0100 |
commit | 48cca7e44f9f8268fdcd4351e2f19ff2275119d1 (patch) | |
tree | 2900d4f0541a70a9b734bcea775e310ceea068ae /tools/testing/selftests/bpf/test_progs.c | |
parent | d98588cef04529aa326c6cbc0cfa01a3a3e00ef5 (diff) | |
download | op-kernel-dev-48cca7e44f9f8268fdcd4351e2f19ff2275119d1.zip op-kernel-dev-48cca7e44f9f8268fdcd4351e2f19ff2275119d1.tar.gz |
libbpf: add support for bpf_call
- recognize relocation emitted by llvm
- since all regular function will be kept in .text section and llvm
takes care of pc-relative offsets in bpf_call instruction
simply copy all of .text to relevant program section while adjusting
bpf_call instructions in program section to point to newly copied
body of instructions from .text
- do so for all programs in the elf file
- set all programs types to the one passed to bpf_prog_load()
Note for elf files with multiple programs that use different
functions in .text section we need to do 'linker' style logic.
This work is still TBD
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Diffstat (limited to 'tools/testing/selftests/bpf/test_progs.c')
0 files changed, 0 insertions, 0 deletions