test_attr 917 tools/bpf/bpftool/prog.c struct bpf_prog_test_run_attr test_attr = {0}; test_attr 960 tools/bpf/bpftool/prog.c test_attr.data_size_out = strtoul(*argv, &endptr, 0); test_attr 988 tools/bpf/bpftool/prog.c test_attr.ctx_size_out = strtoul(*argv, &endptr, 0); test_attr 1016 tools/bpf/bpftool/prog.c err = get_run_data(data_fname_in, &data_in, &test_attr.data_size_in); test_attr 1021 tools/bpf/bpftool/prog.c if (!test_attr.data_size_out) test_attr 1022 tools/bpf/bpftool/prog.c test_attr.data_size_out = default_size; test_attr 1023 tools/bpf/bpftool/prog.c err = alloc_run_data(&data_out, test_attr.data_size_out); test_attr 1028 tools/bpf/bpftool/prog.c err = get_run_data(ctx_fname_in, &ctx_in, &test_attr.ctx_size_in); test_attr 1033 tools/bpf/bpftool/prog.c if (!test_attr.ctx_size_out) test_attr 1034 tools/bpf/bpftool/prog.c test_attr.ctx_size_out = default_size; test_attr 1035 tools/bpf/bpftool/prog.c err = alloc_run_data(&ctx_out, test_attr.ctx_size_out); test_attr 1040 tools/bpf/bpftool/prog.c test_attr.prog_fd = fd; test_attr 1041 tools/bpf/bpftool/prog.c test_attr.repeat = repeat; test_attr 1042 tools/bpf/bpftool/prog.c test_attr.data_in = data_in; test_attr 1043 tools/bpf/bpftool/prog.c test_attr.data_out = data_out; test_attr 1044 tools/bpf/bpftool/prog.c test_attr.ctx_in = ctx_in; test_attr 1045 tools/bpf/bpftool/prog.c test_attr.ctx_out = ctx_out; test_attr 1047 tools/bpf/bpftool/prog.c err = bpf_prog_test_run_xattr(&test_attr); test_attr 1061 tools/bpf/bpftool/prog.c if (test_attr.data_size_out) test_attr 1062 tools/bpf/bpftool/prog.c err += print_run_output(test_attr.data_out, test_attr 1063 tools/bpf/bpftool/prog.c test_attr.data_size_out, test_attr 1065 tools/bpf/bpftool/prog.c if (test_attr.ctx_size_out) test_attr 1066 tools/bpf/bpftool/prog.c err += print_run_output(test_attr.ctx_out, test_attr 1067 tools/bpf/bpftool/prog.c test_attr.ctx_size_out, test_attr 1071 tools/bpf/bpftool/prog.c jsonw_uint_field(json_wtr, "retval", test_attr.retval); test_attr 1072 tools/bpf/bpftool/prog.c jsonw_uint_field(json_wtr, "duration", test_attr.duration); test_attr 1076 tools/bpf/bpftool/prog.c test_attr.retval, test_attr 1077 tools/bpf/bpftool/prog.c repeat > 1 ? " (average)" : "", test_attr.duration); test_attr 543 tools/lib/bpf/bpf.c int bpf_prog_test_run_xattr(struct bpf_prog_test_run_attr *test_attr) test_attr 548 tools/lib/bpf/bpf.c if (!test_attr->data_out && test_attr->data_size_out > 0) test_attr 552 tools/lib/bpf/bpf.c attr.test.prog_fd = test_attr->prog_fd; test_attr 553 tools/lib/bpf/bpf.c attr.test.data_in = ptr_to_u64(test_attr->data_in); test_attr 554 tools/lib/bpf/bpf.c attr.test.data_out = ptr_to_u64(test_attr->data_out); test_attr 555 tools/lib/bpf/bpf.c attr.test.data_size_in = test_attr->data_size_in; test_attr 556 tools/lib/bpf/bpf.c attr.test.data_size_out = test_attr->data_size_out; test_attr 557 tools/lib/bpf/bpf.c attr.test.ctx_in = ptr_to_u64(test_attr->ctx_in); test_attr 558 tools/lib/bpf/bpf.c attr.test.ctx_out = ptr_to_u64(test_attr->ctx_out); test_attr 559 tools/lib/bpf/bpf.c attr.test.ctx_size_in = test_attr->ctx_size_in; test_attr 560 tools/lib/bpf/bpf.c attr.test.ctx_size_out = test_attr->ctx_size_out; test_attr 561 tools/lib/bpf/bpf.c attr.test.repeat = test_attr->repeat; test_attr 564 tools/lib/bpf/bpf.c test_attr->data_size_out = attr.test.data_size_out; test_attr 565 tools/lib/bpf/bpf.c test_attr->ctx_size_out = attr.test.ctx_size_out; test_attr 566 tools/lib/bpf/bpf.c test_attr->retval = attr.test.retval; test_attr 567 tools/lib/bpf/bpf.c test_attr->duration = attr.test.duration; test_attr 148 tools/lib/bpf/bpf.h LIBBPF_API int bpf_prog_test_run_xattr(struct bpf_prog_test_run_attr *test_attr);