linux/tools/include/uapi
Yonghong Song af7ec13833 bpf: Add bpf_skc_to_tcp6_sock() helper
The helper is used in tracing programs to cast a socket
pointer to a tcp6_sock pointer.
The return value could be NULL if the casting is illegal.

A new helper return type RET_PTR_TO_BTF_ID_OR_NULL is added
so the verifier is able to deduce proper return types for the helper.

Different from the previous BTF_ID based helpers,
the bpf_skc_to_tcp6_sock() argument can be several possible
btf_ids. More specifically, all possible socket data structures
with sock_common appearing in the first in the memory layout.
This patch only added socket types related to tcp and udp.

All possible argument btf_id and return value btf_id
for helper bpf_skc_to_tcp6_sock() are pre-calculcated and
cached. In the future, it is even possible to precompute
these btf_id's at kernel build time.

Signed-off-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andriin@fb.com>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Link: https://lore.kernel.org/bpf/20200623230809.3988195-1-yhs@fb.com
2020-06-24 18:37:59 -07:00
..
asm tools: Fix off-by 1 relative directory includes 2020-03-06 08:36:46 -03:00
asm-generic tools headers UAPI: Sync asm-generic/mman-common.h with the kernel 2020-02-12 10:53:06 -03:00
drm tools headers UAPI: Sync drm/i915_drm.h with the kernel sources 2020-04-14 11:02:52 -03:00
linux bpf: Add bpf_skc_to_tcp6_sock() helper 2020-06-24 18:37:59 -07:00
sound tools include UAPI: Sync sound/asound.h copy 2020-02-12 11:04:23 -03:00