On Wed, Nov 11, 2020 at 3:56 AM Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote: > > Em Thu, Nov 05, 2020 at 09:25:49PM -0800, Andrii Nakryiko escreveu: > > Add support for generating split BTF, in which there is a designated base > > BTF, containing a base set of types, and a split BTF, which extends main BTF > > with extra types, that can reference types and strings from the main BTF. > > > This is going to be used to generate compact BTFs for kernel modules, with > > vmlinux BTF being a main BTF, which all kernel modules are based off of. > > > These changes rely on patch set [0] to be present in libbpf submodule. > > > [0] https://patchwork.kernel.org/project/netdevbpf/list/?series=377859&state=* > > So, applied and added this: Awesome, thanks! Do you plan to release v1.19 soon? > > diff --git a/man-pages/pahole.1 b/man-pages/pahole.1 > index 4b5e0a1bf5462b28..20ee91fc911d4b39 100644 > --- a/man-pages/pahole.1 > +++ b/man-pages/pahole.1 > @@ -185,6 +185,10 @@ Do not encode VARs in BTF. > .B \-\-btf_encode_force > Ignore those symbols found invalid when encoding BTF. > > +.TP > +.B \-\-btf_base > +Path to the base BTF file, for instance: vmlinux when encoding kernel module BTF information. > + > .TP > .B \-l, \-\-show_first_biggest_size_base_type_member > Show first biggest size base_type member. > > --------------- > > The entry for btf_encode/-J is missing, I'll add in a followup patch. > > Also I had to fixup ARGP_btf_base to 321 as I added this, to simplify > the kernel scripts and Makefiles: > > $ pahole --numeric_version > 118 > $ Oh, this is nice! Can't really use it with Kbuild now due to backwards compatibility, but maybe someday. > > Now to test this all by applying the kernel patches and the encoding > module BTF, looking at it, etc. > > - Arnaldo > [...]