linux-stable/tools/lib/bpf
Ilya Leoshkevich 6f403d9d53 libbpf: Make BPF-side of USDT support work on big-endian machines
BPF_USDT_ARG_REG_DEREF handling always reads 8 bytes, regardless of
the actual argument size. On little-endian the relevant argument bits
end up in the lower bits of val, and later on the code that handles
all the argument types expects them to be there.

On big-endian they end up in the upper bits of val, breaking that
expectation. Fix by right-shifting val on big-endian.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20220407214411.257260-3-iii@linux.ibm.com
2022-04-07 20:59:10 -07:00
..
.gitignore libbpf: Make libbpf_version.h non-auto-generated 2021-09-13 15:36:47 -07:00
bpf.c libbpf: Add bpf_link_create support for multi kprobes 2022-03-17 20:17:19 -07:00
bpf.h libbpf: Add bpf_link_create support for multi kprobes 2022-03-17 20:17:19 -07:00
bpf_core_read.h libbpf: Fix endianness detection in BPF_CORE_READ_BITFIELD_PROBED() 2021-10-25 20:39:41 -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 Merge https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2021-12-10 15:56:13 -08:00
bpf_helpers.h libbpf: deprecate legacy BPF map definitions 2022-01-20 21:19:05 -08: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: Add BPF_KPROBE_SYSCALL macro 2022-02-08 21:45:02 -08:00
btf.c libbpf: Don't return -EINVAL if hdr_len < offsetofend(core_relo_len) 2022-04-03 19:56:01 -07:00
btf.h libbpf: Deprecate forgotten btf__get_map_kv_tids() 2022-02-04 01:07:16 +01:00
btf_dump.c libbpf: Skip forward declaration when counting duplicated type names 2022-03-01 13:40:57 +01:00
Build libbpf: Wire up USDT API and bpf_link integration 2022-04-05 13:16:07 -07:00
gen_loader.c libbpf: Prepare light skeleton for the kernel. 2022-02-10 23:31:51 +01:00
hashmap.c libbpf: Use IS_ERR_OR_NULL() in hashmap__free() 2022-01-12 17:01:36 -08:00
hashmap.h libbpf, hashmap: Fix undefined behavior in hash_bits 2020-11-02 23:33:51 +01:00
libbpf.c libbpf: Improve string parsing for uprobe auto-attach 2022-04-07 11:42:50 -07:00
libbpf.h libbpf: Wire up USDT API and bpf_link integration 2022-04-05 13:16:07 -07:00
libbpf.map libbpf: Wire up USDT API and bpf_link integration 2022-04-05 13:16:07 -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: Deprecate bpf_prog_load_xattr() API 2021-12-02 15:23:41 -08:00
libbpf_errno.c libbpf: Streamline error reporting for high-level APIs 2021-05-25 17:32:35 -07:00
libbpf_internal.h libbpf: Improve library identification for uprobe binary path resolution 2022-04-07 11:42:50 -07:00
libbpf_legacy.h libbpf: .text routines are subprograms in strict mode 2022-03-17 23:11:15 -07:00
libbpf_probes.c libbpf: Improve LINUX_VERSION_CODE detection 2021-12-28 19:20:31 -08:00
libbpf_version.h libbpf: Support custom SEC() handlers 2022-03-05 09:38:15 -08:00
linker.c libbpf: Fix using invalidated memory in bpf_linker 2021-11-26 00:15:03 +01:00
Makefile libbpf: Add BPF-side of USDT support 2022-04-05 13:16:07 -07:00
netlink.c libbpf: Fix memleak in libbpf_netlink_recv() 2022-02-17 16:09:07 +01:00
nlattr.c libbpf: Switch to void * casting in netlink helpers 2021-06-22 17:04:02 +02:00
nlattr.h libbpf: Switch to void * casting in netlink helpers 2021-06-22 17:04:02 +02:00
relo_core.c libbpf: Split bpf_core_apply_relo() 2022-02-16 10:05:42 -08:00
relo_core.h libbpf: Split bpf_core_apply_relo() 2022-02-16 10:05:42 -08:00
ringbuf.c libbpf: Streamline error reporting for high-level APIs 2021-05-25 17:32:35 -07:00
skel_internal.h libbpf: Prepare light skeleton for the kernel. 2022-02-10 23:31:51 +01:00
str_error.c libbpf: Poison kernel-only integer types 2020-01-10 10:38:00 -08:00
str_error.h
strset.c libbpf: Fix memory leak in strset 2021-10-01 22:54:38 +02:00
strset.h libbpf: Extract internal set-of-strings datastructure APIs 2021-03-18 16:14:22 -07:00
usdt.bpf.h libbpf: Make BPF-side of USDT support work on big-endian machines 2022-04-07 20:59:10 -07:00
usdt.c libbpf: Minor style improvements in USDT code 2022-04-07 20:59:10 -07:00
xsk.c libbpf: Fix array_size.cocci warning 2022-03-07 22:13:00 -08:00
xsk.h libbpf: Deprecate AF_XDP support 2021-11-01 18:12:44 -07:00