Lines Matching refs:args
16 u64 args[MAX_BPF_FUNC_ARGS]; member
24 struct bpf_dummy_ops_test_args *args; in dummy_ops_init_args() local
32 args = kzalloc(sizeof(*args), GFP_KERNEL); in dummy_ops_init_args()
33 if (!args) in dummy_ops_init_args()
37 if (copy_from_user(args->args, ctx_in, size_in)) in dummy_ops_init_args()
41 u_state = u64_to_user_ptr(args->args[0]); in dummy_ops_init_args()
42 if (u_state && copy_from_user(&args->state, u_state, in dummy_ops_init_args()
43 sizeof(args->state))) in dummy_ops_init_args()
46 return args; in dummy_ops_init_args()
48 kfree(args); in dummy_ops_init_args()
52 static int dummy_ops_copy_args(struct bpf_dummy_ops_test_args *args) in dummy_ops_copy_args() argument
56 u_state = u64_to_user_ptr(args->args[0]); in dummy_ops_copy_args()
57 if (u_state && copy_to_user(u_state, &args->state, sizeof(args->state))) in dummy_ops_copy_args()
63 static int dummy_ops_call_op(void *image, struct bpf_dummy_ops_test_args *args) in dummy_ops_call_op() argument
69 if (args->args[0]) in dummy_ops_call_op()
70 state = &args->state; in dummy_ops_call_op()
71 return test(state, args->args[1], args->args[2], in dummy_ops_call_op()
72 args->args[3], args->args[4]); in dummy_ops_call_op()
80 struct bpf_dummy_ops_test_args *args; in bpf_struct_ops_test_run() local
91 args = dummy_ops_init_args(kattr, btf_type_vlen(func_proto)); in bpf_struct_ops_test_run()
92 if (IS_ERR(args)) in bpf_struct_ops_test_run()
93 return PTR_ERR(args); in bpf_struct_ops_test_run()
117 prog_ret = dummy_ops_call_op(image, args); in bpf_struct_ops_test_run()
119 err = dummy_ops_copy_args(args); in bpf_struct_ops_test_run()
125 kfree(args); in bpf_struct_ops_test_run()