KFunc bpf_dynptr_memset
Fill dynptr memory with a constant byte.
Definition
Fills the size
bytes of the memory area pointed to by p
at offset
with the constant byte val
.
Parameters
p
: Destination dynptr - where data will be filled
offset
: Offset into the dynptr to start filling from
size
: Number of bytes to fill
val
: Constant byte to fill the memory with
Returns
Returns 0
on success; negative error, otherwise.
Signature
int bpf_dynptr_memset(struct bpf_dynptr *p, u32 offset, u32 size, u8 val)
Usage
This kfunc allows the filling of a dynptr with a value. This was technically possible with bpf_dynptr_write
but that requires creating a variable on the stack and/or repeated calls. This kfunc does not have that drawback.
Program types
The following program types can make use of this kfunc:
BPF_PROG_TYPE_CGROUP_DEVICE
v6.12 -BPF_PROG_TYPE_CGROUP_SKB
BPF_PROG_TYPE_CGROUP_SOCK
v6.12 -BPF_PROG_TYPE_CGROUP_SOCKOPT
v6.12 -BPF_PROG_TYPE_CGROUP_SOCK_ADDR
v6.7 -BPF_PROG_TYPE_CGROUP_SYSCTL
v6.12 -BPF_PROG_TYPE_LSM
BPF_PROG_TYPE_LWT_IN
BPF_PROG_TYPE_LWT_OUT
BPF_PROG_TYPE_LWT_SEG6LOCAL
BPF_PROG_TYPE_LWT_XMIT
BPF_PROG_TYPE_NETFILTER
BPF_PROG_TYPE_PERF_EVENT
v6.12 -BPF_PROG_TYPE_SCHED_ACT
BPF_PROG_TYPE_SCHED_CLS
BPF_PROG_TYPE_SK_SKB
BPF_PROG_TYPE_SOCKET_FILTER
BPF_PROG_TYPE_SOCK_OPS
v6.15 -BPF_PROG_TYPE_STRUCT_OPS
BPF_PROG_TYPE_SYSCALL
BPF_PROG_TYPE_TRACEPOINT
v6.12 -BPF_PROG_TYPE_TRACING
BPF_PROG_TYPE_XDP
Example
Docs could be improved
This part of the docs is incomplete, contributions are very welcome