[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAEf4Bza3nAgUVdaP6sh9XG4oMdawCp55UeAB3Lgjf9opCw_UnA@mail.gmail.com>
Date: Mon, 26 Jul 2021 12:37:56 -0700
From: Andrii Nakryiko <andrii.nakryiko@...il.com>
To: Alexei Starovoitov <alexei.starovoitov@...il.com>
Cc: "David S. Miller" <davem@...emloft.net>,
Daniel Borkmann <daniel@...earbox.net>,
Andrii Nakryiko <andrii@...nel.org>,
Networking <netdev@...r.kernel.org>, bpf <bpf@...r.kernel.org>,
Kernel Team <kernel-team@...com>
Subject: Re: [PATCH bpf-next 0/4] libbpf: Move CO-RE logic into separate file.
On Tue, Jul 20, 2021 at 5:08 PM Alexei Starovoitov
<alexei.starovoitov@...il.com> wrote:
>
> From: Alexei Starovoitov <ast@...nel.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
>
Powered by blists - more mailing lists