On Mon, Jul 8, 2019 at 3:43 PM Krzesimir Nowak <krzesimir@xxxxxxxxxx> wrote: > > 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> > --- lgtm, with some nits below Acked-by: Andrii Nakryiko <andriin@xxxxxx> > 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 c7541f572932..1640ba9f12c1 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); nit: this is now is not needed as a separate local variable, inline? > - uint32_t retval; > int saved_errno; > int err; > + 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) { this if condition now fits one line, can you please combine? thanks! > - printf("FAIL retval %d != %d ", retval, expected_val); > + printf("FAIL retval %d != %d ", attr.retval, expected_val); > return 1; > } > > -- > 2.20.1 >