Skip to contentSkip to conversation

perf test BPF: Fixup BPF test using epoll_pwait syscall function probe

tip:perf/urgent tip-bot for Arnaldo Carvalho de Melo 1 participant 1 message Apr 21, 2018 1 message not in the archive perf events

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw
Commit-ID:  eccb1b936363c62544bccb5bbb75afec9536f7e3
Gitweb:     https://git.kernel.org/tip/eccb1b936363c62544bccb5bbb75afec9536f7e3
Author:     Arnaldo Carvalho de Melo <[email protected]>
AuthorDate: Wed, 18 Apr 2018 12:59:03 -0300
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Wed, 18 Apr 2018 15:35:53 -0300

perf test BPF: Fixup BPF test using epoll_pwait syscall function probe

Since e145242ea0df ("syscalls/core, syscalls/x86: Clean up syscall stub naming convention") changed the main syscall function for 'epoll_pwait' to something other than the expected 'SyS_epoll_pwait the' 'perf test BPF' entries started failing, fix it by using something called from the main syscall function instead, 'epoll_wait', which should keep this test working in older kernels too.

Before:

  # perf test BPF
  40: BPF filter                           :
  40.1: Basic BPF filtering                : FAILED!
  40.2: BPF pinning                        : Skip
  40.3: BPF prologue generation            : Skip
  40.4: BPF relocation checker             : Skip

If we use -v for that test we see the problem:

Probe point 'SyS_epoll_pwait' not found.

After:

  # perf test BPF
  40: BPF filter                           :
  40.1: Basic BPF filtering                : Ok
  40.2: BPF pinning                        : Ok
  40.3: BPF prologue generation            : Ok
  40.4: BPF relocation checker             : Ok
  #
---
 tools/perf/tests/bpf-script-example.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
tools/perf/tests/bpf-script-example.c +1 -1
index e4123c1b0e88..1ca5106df5f1 100644
@@ -31,7 +31,7 @@ struct bpf_map_def SEC("maps") flip_table = {
 	.max_entries = 1,
 };
 
-SEC("func=SyS_epoll_pwait")
+SEC("func=do_epoll_wait")
 int bpf_func__SyS_epoll_pwait(void *ctx)
 {
 	int ind =0;