]> git.baikalelectronics.ru Git - kernel.git/commit
bpf: Add BTF_ID_LIST_GLOBAL in btf_ids.h
authorYonghong Song <yhs@fb.com>
Mon, 20 Jul 2020 16:34:01 +0000 (09:34 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 21 Jul 2020 20:26:26 +0000 (13:26 -0700)
commit24533ad00f5bc4e67a7aee01b8a64ee6a97bc475
tree2168b0dbe894b1966d86451de379cffcad31f37a
parent457b06c2058b5ca4ac96854ca9fefc4240c1d06d
bpf: Add BTF_ID_LIST_GLOBAL in btf_ids.h

Existing BTF_ID_LIST used a local static variable
to store btf_ids. This patch provided a new macro
BTF_ID_LIST_GLOBAL to store btf_ids in a global
variable which can be shared among multiple files.

The existing BTF_ID_LIST is still retained.
Two reasons. First, BTF_ID_LIST is also used to build
btf_ids for helper arguments which typically
is an array of 5. Since typically different
helpers have different signature, it makes
little sense to share them. Second, some
current computed btf_ids are indeed local.
If later those btf_ids are shared between
different files, they can use BTF_ID_LIST_GLOBAL then.

Signed-off-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Link: https://lore.kernel.org/bpf/20200720163401.1393159-1-yhs@fb.com
include/linux/btf_ids.h
tools/include/linux/btf_ids.h
tools/testing/selftests/bpf/prog_tests/resolve_btfids.c