Messages in this thread | | | From | Stephane Eranian <> | Date | Tue, 15 Mar 2022 17:03:45 -0700 | Subject | Re: [PATCH v6 10/12] perf tools: Improve IBS error handling |
| |
On Tue, Mar 15, 2022 at 12:46 AM Ravi Bangoria <ravi.bangoria@amd.com> wrote: > > Stephane, > > On 09-Feb-22 2:46 AM, Stephane Eranian wrote: > > From: Kim Phillips <kim.phillips@amd.com> > > > > improve the error message returned on failed perf_event_open() on AMD when > > using IBS. > > > > Output of executing 'perf record -e ibs_op// true' BEFORE this patch: > > > > The sys_perf_event_open() syscall returned with 22 (Invalid argument)for event (ibs_op//u). > > /bin/dmesg | grep -i perf may provide additional information. > > > > Output after: > > > > AMD IBS cannot exclude kernel events. Try running at a higher privilege level. > > > > Output of executing 'sudo perf record -e ibs_op// true' BEFORE this patch: > > > > Error: > > The sys_perf_event_open() syscall returned with 22 (Invalid argument) for event (ibs_op//). > > /bin/dmesg | grep -i perf may provide additional information. > > > > Output after: > > > > Error: > > AMD IBS may only be available in system-wide/per-cpu mode. Try using -a, or -C and workload affinity > > This patch seems to be causing regression to perf python test. > > Without this patch: > > $ sudo ./perf test -vvv 19 > 19: 'import perf' in python : > --- start --- > test child forked, pid 145391 > python usage test: "echo "import sys ; sys.path.append('python'); import perf" | '/usr/bin/python2' " > test child finished with 0 > ---- end ---- > 'import perf' in python: Ok > > With this patch: > > $ sudo ./perf test -vvv 19 > 19: 'import perf' in python : > --- start --- > test child forked, pid 144415 > python usage test: "echo "import sys ; sys.path.append('python'); import perf" | '/usr/bin/python2' " > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > ImportError: python/perf.so: undefined symbol: perf_env__cpuid > test child finished with -1 > ---- end ---- > 'import perf' in python: FAILED! >
The fix I sent you is just to prevent a potential SEGFAULT in is_amd_ibs(). I bet the test fails some perf_event_open() and ends up in strerror function and from there I don't see how the patch could impact the test, given you'd segfault otherwise.
I tried on my side and with or without this patch this test fails. I think this looks like an unrelated issue.
| |