These function attributes are supported by the BPF back end:
kernel_helper
¶use this attribute to indicate the specified function declaration is a kernel helper. The helper function is passed as an argument to the attribute. Example:
int bpf_probe_read (void *dst, int size, const void *unsafe_ptr) __attribute__ ((kernel_helper (4)));
naked
¶This attribute allows the compiler to construct the requisite function
declaration, while allowing the body of the function to be assembly
code. The specified function will not have prologue/epilogue
sequences generated by the compiler. Only basic asm
statements
can safely be included in naked functions (see Basic Asm — Assembler Instructions Without Operands). While
using extended asm
or a mixture of basic asm
and C code
may appear to work, they cannot be depended upon to work reliably and
are not supported.