diff options
author | 2024-09-27 14:54:22 -0700 | |
---|---|---|
committer | 2024-10-03 17:47:53 -0700 | |
commit | 904181b33478a25bbc08f3427f6b25c9001cdbeb (patch) | |
tree | fe1bf335efa81c24a602a58f3d9acc44541056d5 /tools/perf/scripts/python/call-graph-from-postgresql.py | |
parent | Merge branch 'libbpf-selftests-bpf-support-cross-endian-usage' (diff) | |
parent | bpftool: __bpf_fastcall for kfuncs marked with special decl_tag (diff) | |
download | wireguard-linux-904181b33478a25bbc08f3427f6b25c9001cdbeb.tar.xz wireguard-linux-904181b33478a25bbc08f3427f6b25c9001cdbeb.zip |
Merge branch 'bpf_fastcall-attribute-in-vmlinux-h-and-bpf_helper_defs-h'
Eduard Zingerman says:
====================
'bpf_fastcall' attribute in vmlinux.h and bpf_helper_defs.h
The goal of this patch-set is to reflect attribute bpf_fastcall
for supported helpers and kfuncs in generated header files.
For helpers this requires a tweak for scripts/bpf_doc.py and an update
to uapi/linux/bpf.h doc-comment.
For kfuncs this requires:
- introduction of a new KF_FASTCALL flag;
- modification to pahole to read kfunc flags and generate
DECL_TAG "bpf_fastcall" for marked kfuncs;
- modification to bpftool to scan for DECL_TAG "bpf_fastcall"
presence.
In both cases the following helper macro is defined in the generated
header:
#ifndef __bpf_fastcall
#if __has_attribute(bpf_fastcall)
#define __bpf_fastcall __attribute__((bpf_fastcall))
#else
#define __bpf_fastcall
#endif
#endif
And is used to mark appropriate function prototypes. More information
about bpf_fastcall attribute could be found in [1] and [2].
Modifications to pahole are submitted separately.
[1] LLVM source tree commit:
64e464349bfc ("[BPF] introduce __attribute__((bpf_fastcall))")
[2] Linux kernel tree commit (note: feature was renamed from
no_caller_saved_registers to bpf_fastcall after this commit):
52839f31cece ("Merge branch 'no_caller_saved_registers-attribute-for-helper-calls'")
====================
Link: https://lore.kernel.org/r/20240916091712.2929279-1-eddyz87@gmail.com
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/call-graph-from-postgresql.py')
0 files changed, 0 insertions, 0 deletions