Re: [PATCH] perf test: Fix basic bpf filtering test

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Kind Ping. Thank you.

On 8/17/20 9:27 AM, Sumanth Korikkar wrote:
BPF basic filtering test fails on s390x (when vmlinux debuginfo is
utilized instead of /proc/kallsyms)

Info:
- bpf_probe_load installs the bpf code at do_epoll_wait.
- For s390x, do_epoll_wait resolves to 3 functions including inlines.
   found inline addr: 0x43769e
   Probe point found: __s390_sys_epoll_wait+6
   found inline addr: 0x437290
   Probe point found: do_epoll_wait+0
   found inline addr: 0x4375d6
   Probe point found: __se_sys_epoll_wait+6
- add_bpf_event  creates evsel for every probe in a BPF object. This
   results in 3 evsels.

Solution:
- Expected result = 50% of the samples to be collected from epoll_wait *
   number of entries present in the evlist.

Signed-off-by: Sumanth Korikkar <sumanthk@xxxxxxxxxxxxx>
Reviewed-by: Thomas Richter <tmricht@xxxxxxxxxxxxx>
---
  tools/perf/tests/bpf.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/tests/bpf.c b/tools/perf/tests/bpf.c
index 5d20bf8397f0..cd77e334e577 100644
--- a/tools/perf/tests/bpf.c
+++ b/tools/perf/tests/bpf.c
@@ -197,7 +197,7 @@ static int do_test(struct bpf_object *obj, int (*func)(void),
  		perf_mmap__read_done(&md->core);
  	}
- if (count != expect) {
+	if (count != expect * evlist->core.nr_entries) {
  		pr_debug("BPF filter result incorrect, expected %d, got %d samples\n", expect, count);
  		goto out_delete_evlist;
  	}

--
Sumanth Korikkar




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux