linux/tools/lib/bpf
Pu Lehui 77e2f5d481 libbpf: Fix incorrect traversal end type ID when marking BTF_IS_EMBEDDED
[ Upstream commit 5ca681a86e ]

When redirecting the split BTF to the vmlinux base BTF, we need to mark
the distilled base struct/union members of split BTF structs/unions in
id_map with BTF_IS_EMBEDDED. This indicates that these types must match
both name and size later. Therefore, we need to traverse the entire
split BTF, which involves traversing type IDs from nr_dist_base_types to
nr_types. However, the current implementation uses an incorrect
traversal end type ID, so let's correct it.

Fixes: 19e00c897d ("libbpf: Split BTF relocation")
Signed-off-by: Pu Lehui <pulehui@huawei.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20250115100241.4171581-3-pulehui@huaweicloud.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2025-02-08 09:57:34 +01:00
..
.gitignore tools build: Correct bpf fixdep dependencies 2024-08-05 12:19:48 -03:00
bpf.c libbpf: fix feature detectors when using token_fd 2024-05-15 09:34:53 -07:00
bpf.h libbpf: fix some typos in libbpf 2024-09-05 13:07:47 -07:00
bpf_core_read.h bpf: Avoid uninitialized value in BPF_CORE_READ_BITFIELD 2024-05-08 15:00:55 -07:00
bpf_endian.h libbpf: Make bpf_endian co-exist with vmlinux.h 2020-07-01 09:06:12 +02:00
bpf_gen_internal.h libbpf: Support kfunc detection in light skeleton. 2023-03-22 09:31:05 -07:00
bpf_helpers.h libbpf: Fix some typos in comments 2024-09-09 16:05:40 -07:00
bpf_prog_linfo.c libbpf: Streamline error reporting for high-level APIs 2021-05-25 17:32:35 -07:00
bpf_tracing.h libbpf: Fix some typos in comments 2024-09-09 16:05:40 -07:00
btf.c libbpf: Fix return zero when elf_begin failed 2025-02-08 09:57:34 +01:00
btf.h libbpf: Fix some typos in comments 2024-09-09 16:05:40 -07:00
btf_dump.c libbpf: Fix some typos in comments 2024-09-09 16:05:40 -07:00
btf_iter.c libbpf,bpf: Share BTF relocate-related code with kernel 2024-06-21 14:45:07 -07:00
btf_relocate.c libbpf: Fix incorrect traversal end type ID when marking BTF_IS_EMBEDDED 2025-02-08 09:57:34 +01:00
Build libbpf: Split field iter code into its own file kernel 2024-06-21 14:45:07 -07:00
elf.c libbpf: Workaround -Wmaybe-uninitialized false positive 2024-08-15 15:56:40 -07:00
features.c libbpf: don't close(-1) in multi-uprobe feature detector 2024-05-31 14:56:51 -07:00
gen_loader.c libbpf: Store zero fd to fd_array for loader kfunc relocation 2023-05-16 22:09:23 -07:00
hashmap.c libbpf: Hashmap interface update to allow both long and void* keys/values 2022-11-09 20:45:14 -08:00
hashmap.h libbpf: Remove HASHMAP_INIT static initialization helper 2023-07-11 09:40:05 -07:00
libbpf.c libbpf: move global data mmap()'ing into bpf_object__load() 2024-12-05 14:01:47 +01:00
libbpf.h libbpf: Add bpf_object__token_fd accessor 2024-09-12 19:07:13 -07:00
libbpf.map libbpf: Add bpf_object__token_fd accessor 2024-09-12 19:07:13 -07:00
libbpf.pc.template libbpf: Add zlib as a dependency in pkg-config template 2019-12-16 14:55:29 -08:00
libbpf_common.h libbpf: Fix potential uninitialized tail padding with LIBBPF_OPTS_RESET 2023-11-09 19:07:51 -08:00
libbpf_errno.c libbpf: Optimized return value in libbpf_strerror when errno is libbpf errno 2022-12-14 18:39:33 +01:00
libbpf_internal.h libbpf: Split BTF relocation 2024-06-17 14:38:31 -07:00
libbpf_legacy.h libbpf: Fix some typos in comments 2024-09-09 16:05:40 -07:00
libbpf_probes.c bpf: improve error message for unsupported helper 2024-03-28 18:30:53 -07:00
libbpf_version.h libbpf: Start v1.5 development cycle 2024-04-06 09:11:10 -07:00
linker.c libbpf: Fix segfault due to libelf functions not setting errno 2025-02-08 09:57:27 +01:00
Makefile libbpf: Add missing per-arch include path 2024-12-05 14:01:42 +01:00
netlink.c libbpf: Use OPTS_SET() macro in bpf_xdp_query() 2024-02-06 09:51:26 -08:00
nlattr.c libbpf: Fix alen calculation in libbpf_nla_dump_errormsg() 2023-02-10 15:27:22 -08:00
nlattr.h libbpf: add API to get XDP/XSK supported features 2023-02-02 20:48:24 -08:00
relo_core.c libbpf: fix signedness determination in CO-RE relo handling logic 2023-08-23 21:13:48 -07:00
relo_core.h bpf, libbpf: Add type match support 2022-07-05 21:14:25 -07:00
ringbuf.c libbpf: fix ring_buffer__consume_n() return result logic 2024-05-02 16:41:03 -07:00
skel_internal.h libbpf: Fix some typos in comments 2024-09-09 16:05:40 -07:00
str_error.c libbpf: fix libbpf_strerror_r() handling unknown errors 2024-05-07 16:21:59 -07:00
str_error.h libbpf: Move feature detection code into its own file 2024-01-24 16:21:02 -08:00
strset.c libbpf: Hashmap interface update to allow both long and void* keys/values 2022-11-09 20:45:14 -08:00
strset.h libbpf: Extract internal set-of-strings datastructure APIs 2021-03-18 16:14:22 -07:00
usdt.bpf.h libbpf: fix some typos in libbpf 2024-09-05 13:07:47 -07:00
usdt.c libbpf: don't adjust USDT semaphore address if .stapsdt.base addr is missing 2025-02-08 09:57:26 +01:00
zip.c libbpf: Ignore warnings about "inefficient alignment" 2023-03-16 18:20:08 +01:00
zip.h libbpf: Implement basic zip archive parsing support 2023-03-01 16:05:34 -08:00