Thread (10 messages) read the whole thread 10 messages, 3 authors, 2021-07-29

Re: [PATCH bpf-next 0/4] libbpf: Move CO-RE logic into separate file.

From: Andrii Nakryiko <hidden>
Date: 2021-07-26 19:38:10
Also in: bpf

On Tue, Jul 20, 2021 at 5:08 PM Alexei Starovoitov
[off-list ref] wrote:
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.

Alexei Starovoitov (4):
  libbpf: Cleanup the layering between CORE and bpf_program.
  libbpf: Split bpf_core_apply_relo() into bpf_program indepdent helper.
  libbpf: Move CO-RE types into relo_core.h.
  libbpf: Split CO-RE logic into relo_core.c.
LGTM. Applied to bpf-next, fixed typo in patch 3 subject, and also
made few adjustments. Let me know if you object to any of them:

1. I felt like the original copyright year should be preserved when
moving code into a new file, so I've changed relo_core.h's year to
2019. Hope that's fine.
2. relo_core.c didn't have a Copyright line, so I added the /*
Copyright (c) 2019 Facebook */ as well.
3. I trimmed down the list of #includes in core_relo.c, because most
of them were absolutely irrelevant and just preserved as-is from
libbpf.c Everything seems to compile just fine without those.
 tools/lib/bpf/Build             |    2 +-
 tools/lib/bpf/libbpf.c          | 1344 +------------------------------
 tools/lib/bpf/libbpf_internal.h |   81 +-
 tools/lib/bpf/relo_core.c       | 1326 ++++++++++++++++++++++++++++++
 tools/lib/bpf/relo_core.h       |  102 +++
 5 files changed, 1473 insertions(+), 1382 deletions(-)
 create mode 100644 tools/lib/bpf/relo_core.c
 create mode 100644 tools/lib/bpf/relo_core.h

--
2.30.2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help