path: root/tools/testing/selftests/bpf
diff options
authorAndrii Nakryiko <andriin@fb.com>2020-01-09 19:42:46 -0800
committerAlexei Starovoitov <ast@kernel.org>2020-01-09 21:17:01 -0800
commit492ab0205f500ebd20b4f0c9e95a1ba007b0c542 (patch)
tree46cf10d9d9f327bc4d67268d1b91934a9303e0b5 /tools/testing/selftests/bpf
parentbpf: Document BPF_F_QUERY_EFFECTIVE flag (diff)
libbpf: Make bpf_map order and indices stable
Currently, libbpf re-sorts bpf_map structs after all the maps are added and initialized, which might change their relative order and invalidate any bpf_map pointer or index taken before that. This is inconvenient and error-prone. For instance, it can cause .kconfig map index to point to a wrong map. Furthermore, libbpf itself doesn't rely on any specific ordering of bpf_maps, so it's just an unnecessary complication right now. This patch drops sorting of maps and makes their relative positions fixed. If efficient index is ever needed, it's better to have a separate array of pointers as a search index, instead of reordering bpf_map struct in-place. This will be less error-prone and will allow multiple independent orderings, if necessary (e.g., either by section index or by name). Fixes: 166750bc1dd2 ("libbpf: Support libbpf-provided extern variables") Reported-by: Martin KaFai Lau <kafai@fb.com> Signed-off-by: Andrii Nakryiko <andriin@fb.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20200110034247.1220142-1-andriin@fb.com
Diffstat (limited to 'tools/testing/selftests/bpf')
0 files changed, 0 insertions, 0 deletions