linux-stable/tools
Andrii Nakryiko 4c59e584d1 libbpf: Add x86-specific USDT arg spec parsing logic
Add x86/x86_64-specific USDT argument specification parsing. Each
architecture will require their own logic, as all this is arch-specific
assembly-based notation. Architectures that libbpf doesn't support for
USDTs will pr_warn() with specific error and return -ENOTSUP.

We use sscanf() as a very powerful and easy to use string parser. Those
spaces in sscanf's format string mean "skip any whitespaces", which is
pretty nifty (and somewhat little known) feature.

All this was tested on little-endian architecture, so bit shifts are
probably off on big-endian, which our CI will hopefully prove.

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Reviewed-by: Alan Maguire <alan.maguire@oracle.com>
Reviewed-by: Dave Marchevsky <davemarchevsky@fb.com>
Link: https://lore.kernel.org/bpf/20220404234202.331384-6-andrii@kernel.org
2022-04-05 13:16:08 -07:00
..
accounting
arch perf tools changes for v5.18: 1st batch 2022-03-27 13:42:32 -07:00
bootconfig
bpf bpftool: Handle libbpf_probe_prog_type errors 2022-04-04 14:54:44 -07:00
build
cgroup tools/cgroup/slabinfo: update to work with struct slab 2022-02-21 11:34:49 +01:00
counter
debugging
edid
firewire
firmware
gpio
hv
iio iio: introduce mag_referenced 2022-02-21 19:33:05 +00:00
include bpf: Correct the comment for BTF kind bitfield 2022-04-03 17:06:52 -07:00
io_uring
kvm/kvm_stat
laptop
leds
lib libbpf: Add x86-specific USDT arg spec parsing logic 2022-04-05 13:16:08 -07:00
memory-model
objtool objtool: Find unused ENDBR instructions 2022-03-15 10:32:47 +01:00
pci
pcmcia
perf perf tools changes for v5.18: 1st batch 2022-03-27 13:42:32 -07:00
power Thermal control updates for 5.18-rc1 2022-03-21 14:35:11 -07:00
rcu
scripts tools: Fix unavoidable GCC call in Clang builds 2022-03-08 23:36:37 +01:00
spi
testing selftests/bpf: Define SYS_NANOSLEEP_KPROBE_NAME for aarch64 2022-04-04 14:57:29 -07:00
thermal/tmon
time
tracing rtla: Tools main loop cleanup 2022-03-15 14:36:50 -04:00
usb
virtio tools/virtio: handle fallout from folio work 2022-03-06 06:06:50 -05:00
vm tools/vm/page_owner_sort.c: support for user-defined culling rules 2022-03-24 19:06:45 -07:00
wmi
Makefile