Re: Which is oldest linux kernel version that can support BTF? #bcc
Andrii Nakryiko
On Tue, Mar 2, 2021 at 4:42 PM <bg.salunke09@...> wrote:
Yes, correct. Yes, you can, if you have vmlinux image with DWARF information in it. You can use pahole tool like this to add .BTF section to vmlinux image: pahole -J <path-to-vmlinux-image> You most probably would want to make a local copy of vmlinux image, of course. After that you can pass the path to that vmlinux with embedded .BTF to libbpf to use for CO-RE relocations. See [0] for recent discussion of the exact same topic. See also patch [1] that was aiming to make this scenario better in libbpf (unfortunately it hasn't landed yet, but it is pretty close to being done, so shouldn't be a problem for you to pick up, if necessary). This is certainly not the most straightforward and easiest path, but if you want to get CO-RE working with older kernel for which you don't have much control, it is definitely a possible way (as long as you have DWARF, which is used to produce BTF for vmlinux). [0] https://lore.kernel.org/bpf/CAEf4BzbJZLjNoiK8_VfeVg_Vrg=9iYFv+po-38SMe=UzwDKJ=Q@mail.gmail.com/ [1] https://lore.kernel.org/bpf/B8801F77-37E8-4EF8-8994-D366D48169A3@araalinetworks.com/ |
|