On Tue, Feb 15, 2022 at 2:59 PM Mauricio Vásquez <mauricio@xxxxxxxxxx> wrote: > > BTFGen needs to run the core relocation logic in order to understand > what are the types involved in a given relocation. > > Currently bpf_core_apply_relo() calculates and **applies** a relocation > to an instruction. Having both operations in the same function makes it > difficult to only calculate the relocation without patching the > instruction. This commit splits that logic in two different phases: (1) > calculate the relocation and (2) patch the instruction. > > For the first phase bpf_core_apply_relo() is renamed to > bpf_core_calc_relo_insn() who is now only on charge of calculating the > relocation, the second phase uses the already existing > bpf_core_patch_insn(). bpf_object__relocate_core() uses both of them and > the BTFGen will use only bpf_core_calc_relo_insn(). > > Signed-off-by: Mauricio Vásquez <mauricio@xxxxxxxxxx> > Signed-off-by: Rafael David Tinoco <rafael.tinoco@xxxxxxxxxxx> > Signed-off-by: Lorenzo Fontana <lorenzo.fontana@xxxxxxxxxx> > Signed-off-by: Leonardo Di Donato <leonardo.didonato@xxxxxxxxxx> > Acked-by: Andrii Nakryiko <andrii@xxxxxxxxxx> Acked-by: Alexei Starovoitov <ast@xxxxxxxxxx>