On Wed, Nov 4, 2020 at 2:02 PM Jiri Olsa <jolsa@xxxxxxxxxx> wrote: > > With upcoming changes to pahole, that change the way how and > which kernel functions are stored in BTF data, we need a way > to recognize iterator functions. > > Iterator functions need to be in BTF data, but have no real > body and are currently placed in .init.text section, so they > are freed after kernel init and are filtered out of BTF data > because of that. > > The solution is to place these functions under new section: > .init.bpf.preserve_type > > And add 2 new symbols to mark that area: > __init_bpf_preserve_type_begin > __init_bpf_preserve_type_end > > The code in pahole responsible for picking up the functions will > be able to recognize functions from this section and add them to > the BTF data and filter out all other .init.text functions. > > Suggested-by: Yonghong Song <yhs@xxxxxx> > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx> Acked-by: Song Liu <songliubraving@xxxxxx> [...]