tree 1a4ef59e764121dc2cacab734953201e787ece9c
parent 2b7e9f25e590726cca76700ebdb10e92a7a72ca1
parent b0588390dbcedcd74fab6ffb8afe8d52380fd8b6
author Andrii Nakryiko <andrii@kernel.org> 1627326683 -0700
committer Andrii Nakryiko <andrii@kernel.org> 1627327760 -0700

Merge branch 'libbpf: Move CO-RE logic into separate file.'

Alexei Starovoitov says:

====================

From: Alexei Starovoitov <ast@kernel.org>

Split CO-RE processing logic from libbpf into separate file
with an interface that doesn't dependend on libbpf internal details.
As the next step relo_core.c will be compiled with libbpf and with the kernel.
The _internal_ interface between libbpf/CO-RE and kernel/CO-RE will be:
int bpf_core_apply_relo_insn(const char *prog_name, struct bpf_insn *insn,
			     int insn_idx,
			     const struct bpf_core_relo *relo,
			     int relo_idx,
			     const struct btf *local_btf,
			     struct bpf_core_cand_list *cands);
where bpf_core_relo and bpf_core_cand_list are simple types
prepared by kernel and libbpf.

Though diff stat shows a lot of lines inserted/deleted they are moved lines.
Pls review with diff.colorMoved.
====================

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
