bpf: Add type cast unit tests
authorYonghong Song <yhs@fb.com>
Sun, 20 Nov 2022 19:54:42 +0000 (11:54 -0800)
committerAlexei Starovoitov <ast@kernel.org>
Sun, 20 Nov 2022 23:45:48 +0000 (15:45 -0800)
commit58d84bee58465cc9f6a63ca3931240419497f917
treecaec27087f7dbc54f6c594fe7d6a987f2a20a202
parenta35b9af4ec2c7f69286ef861fd2074a577e354cb
bpf: Add type cast unit tests

Three tests are added. One is from John Fastabend ({1]) which tests
tracing style access for xdp program from the kernel ctx.
Another is a tc test to test both kernel ctx tracing style access
and explicit non-ctx type cast. The third one is for negative tests
including two tests, a tp_bpf test where the bpf_rdonly_cast()
returns a untrusted ptr which cannot be used as helper argument,
and a tracepoint test where the kernel ctx is a u64.

Also added the test to DENYLIST.s390x since s390 does not currently
support calling kernel functions in JIT mode.

  [1] https://lore.kernel.org/bpf/20221109215242.1279993-1-john.fastabend@gmail.com/

Signed-off-by: Yonghong Song <yhs@fb.com>
Link: https://lore.kernel.org/r/20221120195442.3114844-1-yhs@fb.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/DENYLIST.s390x
tools/testing/selftests/bpf/prog_tests/type_cast.c [new file with mode: 0644]
tools/testing/selftests/bpf/progs/type_cast.c [new file with mode: 0644]