ARG_PTR_TO_DYNPTR
sub->args[i].arg_type = ARG_PTR_TO_DYNPTR;
.arg4_type = ARG_PTR_TO_DYNPTR | DYNPTR_TYPE_LOCAL | MEM_UNINIT | MEM_WRITE,
.arg3_type = ARG_PTR_TO_DYNPTR,
.arg1_type = ARG_PTR_TO_DYNPTR,
.arg1_type = ARG_PTR_TO_DYNPTR,
.arg4_type = ARG_PTR_TO_DYNPTR | DYNPTR_TYPE_RINGBUF | MEM_UNINIT | MEM_WRITE,
.arg1_type = ARG_PTR_TO_DYNPTR | DYNPTR_TYPE_RINGBUF | OBJ_RELEASE,
.arg1_type = ARG_PTR_TO_DYNPTR | DYNPTR_TYPE_RINGBUF | OBJ_RELEASE,
arg_type = ARG_PTR_TO_DYNPTR;
enum bpf_arg_type dynptr_arg_type = ARG_PTR_TO_DYNPTR;
case ARG_PTR_TO_DYNPTR:
} else if (arg->arg_type == ARG_PTR_TO_DYNPTR) {
return base_type(type) == ARG_PTR_TO_DYNPTR;
[ARG_PTR_TO_DYNPTR] = &dynptr_types,
case ARG_PTR_TO_DYNPTR:
if (arg_type == ARG_PTR_TO_DYNPTR)
} else if (arg->arg_type == ARG_PTR_TO_DYNPTR) {
ret = check_func_arg_reg_off(env, reg, argno, ARG_PTR_TO_DYNPTR);