summaryrefslogtreecommitdiff
path: root/include/linux/bpf.h
diff options
context:
space:
mode:
authorLeon Hwang <leon.hwang@linux.dev>2025-09-19 07:41:09 +0300
committerAlexei Starovoitov <ast@kernel.org>2025-09-23 22:07:46 +0300
commitccb4f5d91ec43c05ba165ccfc7ed889eb9cdfd05 (patch)
tree0c7b1d0fb83f232083059b08732b027d6aa49205 /include/linux/bpf.h
parent2383e45f1da7ac73683ac3494a205bc878a58cc9 (diff)
downloadlinux-ccb4f5d91ec43c05ba165ccfc7ed889eb9cdfd05.tar.xz
bpf: Allow union argument in trampoline based programs
Currently, functions with 'union' arguments cannot be traced with fentry/fexit: bpftrace -e 'fentry:release_pages { exit(); }' -v The function release_pages arg0 type UNION is unsupported. The type of the 'release_pages' arg0 is defined as: typedef union { struct page **pages; struct folio **folios; struct encoded_page **encoded_pages; } release_pages_arg __attribute__ ((__transparent_union__)); This patch relaxes the restriction by allowing function arguments of type 'union' to be traced in verifier. Reviewed-by: Amery Hung <ameryhung@gmail.com> Signed-off-by: Leon Hwang <leon.hwang@linux.dev> Link: https://lore.kernel.org/r/20250919044110.23729-2-leon.hwang@linux.dev Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'include/linux/bpf.h')
-rw-r--r--include/linux/bpf.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/bpf.h b/include/linux/bpf.h
index a2ab51fa8b0a..ba3a3be7eb2a 100644
--- a/include/linux/bpf.h
+++ b/include/linux/bpf.h
@@ -1128,7 +1128,7 @@ struct bpf_prog_offload {
*/
#define MAX_BPF_FUNC_REG_ARGS 5
-/* The argument is a structure. */
+/* The argument is a structure or a union. */
#define BTF_FMODEL_STRUCT_ARG BIT(0)
/* The argument is signed. */