bpf/selftests: Test fentry attachment to shadowed functions
authorViktor Malik <vmalik@redhat.com>
Fri, 10 Mar 2023 07:41:00 +0000 (08:41 +0100)
committerAlexei Starovoitov <ast@kernel.org>
Thu, 16 Mar 2023 01:38:30 +0000 (18:38 -0700)
commitaa3d65de4b9004d799f97700751a86d3ebd7d5f9
treeec9df74470d9a94d7cd6baaa2bd6a47453081879
parent31bf1dbccfb0a9861d4846755096b3fff5687f8a
bpf/selftests: Test fentry attachment to shadowed functions

Adds a new test that tries to attach a program to fentry of two
functions of the same name, one located in vmlinux and the other in
bpf_testmod.

To avoid conflicts with existing tests, a new function
"bpf_fentry_shadow_test" was created both in vmlinux and in bpf_testmod.

The previous commit fixed a bug which caused this test to fail. The
verifier would always use the vmlinux function's address as the target
trampoline address, hence trying to create two trampolines for a single
address, which is forbidden.

The test (similarly to other fentry/fexit tests) is not working on arm64
at the moment.

Signed-off-by: Viktor Malik <vmalik@redhat.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Link: https://lore.kernel.org/r/5fe2f364190b6f79b085066ed7c5989c5bc475fa.1678432753.git.vmalik@redhat.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
net/bpf/test_run.c
tools/testing/selftests/bpf/DENYLIST.aarch64
tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c
tools/testing/selftests/bpf/prog_tests/module_fentry_shadow.c [new file with mode: 0644]