The bpf_prog_test_run_xattr function gives more options to set up a test run of a BPF program than the bpf_prog_test_run function. We will need this extra flexibility to pass ctx data later. Signed-off-by: Krzesimir Nowak <krzesimir@xxxxxxxxxx> --- tools/testing/selftests/bpf/test_verifier.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/tools/testing/selftests/bpf/test_verifier.c b/tools/testing/selftests/bpf/test_verifier.c index 779e30b96ded..db1f0f758f81 100644 --- a/tools/testing/selftests/bpf/test_verifier.c +++ b/tools/testing/selftests/bpf/test_verifier.c @@ -822,14 +822,20 @@ static int do_prog_test_run(int fd_prog, bool unpriv, uint32_t expected_val, { __u8 tmp[TEST_DATA_LEN << 2]; __u32 size_tmp = sizeof(tmp); - uint32_t retval; int err; int saved_errno; + struct bpf_prog_test_run_attr attr = { + .prog_fd = fd_prog, + .repeat = 1, + .data_in = data, + .data_size_in = size_data, + .data_out = tmp, + .data_size_out = size_tmp, + }; if (unpriv) set_admin(true); - err = bpf_prog_test_run(fd_prog, 1, data, size_data, - tmp, &size_tmp, &retval, NULL); + err = bpf_prog_test_run_xattr(&attr); saved_errno = errno; if (unpriv) set_admin(false); @@ -846,9 +852,9 @@ static int do_prog_test_run(int fd_prog, bool unpriv, uint32_t expected_val, return err; } } - if (retval != expected_val && + if (attr.retval != expected_val && expected_val != POINTER_VALUE) { - printf("FAIL retval %d != %d ", retval, expected_val); + printf("FAIL retval %d != %d ", attr.retval, expected_val); return 1; } -- 2.20.1