Re: [linus:master] [perf tools] af954f76ee: perf-sanity-tests.Test_data_symbol.fail

From: Namhyung Kim
Date: Wed Dec 04 2024 - 16:44:15 EST


On Wed, Dec 04, 2024 at 10:04:46PM +0800, Oliver Sang wrote:
> hi, Namhyung Kim,
>
> On Mon, Dec 02, 2024 at 12:32:16PM -0800, Namhyung Kim wrote:
> > Hello,
> >
> > On Sat, Nov 30, 2024 at 03:03:10PM +0800, kernel test robot wrote:
> > >
> > >
> > > Hello,
> > >
> > > kernel test robot noticed "perf-sanity-tests.Test_data_symbol.fail" on:
> > >
> > > commit: af954f76eea56453713ae657f6812d4063f9bc57 ("perf tools: Check fallback error and order")
> > > https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
> > >
> > > [test failed on linus/master 7af08b57bcb9ebf78675c50069c54125c0a8b795]
> > > [test failed on linux-next/master f486c8aa16b8172f63bddc70116a0c897a7f3f02]
> > >
> > > in testcase: perf-sanity-tests
> > > version:
> > > with following parameters:
> > >
> > > perf_compiler: gcc
> > >
> > >
> > >
> > > config: x86_64-rhel-8.3-bpf
> > > compiler: gcc-12
> > > test machine: 224 threads 2 sockets Intel(R) Xeon(R) Platinum 8480+ (Sapphire Rapids) with 256G memory
> > >
> > > (please refer to attached dmesg/kmsg for entire log/backtrace)
> > >
> > >
> > > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > > the same patch/commit), kindly add following tags
> > > | Reported-by: kernel test robot <oliver.sang@xxxxxxxxx>
> > > | Closes: https://lore.kernel.org/oe-lkp/202411301431.799e5531-lkp@xxxxxxxxx
> > >
> > >
> > >
> > > 2024-11-28 08:31:19 sudo /usr/src/linux-perf-x86_64-rhel-8.3-bpf-af954f76eea56453713ae657f6812d4063f9bc57/tools/perf/perf test 121
> > > 121: Test data symbol : FAILED!
> >
> > Thanks for the report. But I have a request.
> >
> > Can you please run the perf test with -v option so that we can see the
> > detailed error messages when it failed?
>
> below is the log with '-v'
>
> 2024-12-03 11:20:32 sudo /usr/src/linux-perf-x86_64-rhel-8.3-bpf-af954f76eea56453713ae657f6812d4063f9bc57/tools/perf/perf test 121 -v
> 121: Test data symbol:
> --- start ---
> test child forked, pid 143127
> 294e400-294e439 l buf1
> perf does have symbol 'buf1'
> Recording workload...
> Waiting for "perf record has started" message
> /usr/src/perf_selftests-x86_64-rhel-8.3-bpf-af954f76eea56453713ae657f6812d4063f9bc57/tools/perf/tests/shell/test_data_symbol.sh: line 74: kill: (143139) - No such process
> Cleaning up files...
> ---- end(-1) ----
> 121: Test data symbol : FAILED!

Thanks for the log. I think it failed to run perf mem record at all.

I've set up a Sapphire Rapids and run the test. It said:

# perf mem record -avv -C0 true
DEBUGINFOD_URLS=
nr_cblocks: 0
affinity: SYS
mmap flush: 1
comp level: 0
------------------------------------------------------------
perf_event_attr:
type 4 (cpu)
size 136
config 0x8203 (mem-loads-aux)
{ sample_period, sample_freq } 4000
sample_type IP|TID|TIME|ADDR|CPU|PERIOD|IDENTIFIER|DATA_SRC|WEIGHT_STRUCT
read_format ID|LOST
disabled 1
freq 1
precise_ip 3
sample_id_all 1
------------------------------------------------------------
sys_perf_event_open: pid -1 cpu 0 group_fd -1 flags 0x8 = 5
------------------------------------------------------------
perf_event_attr:
type 4 (cpu)
size 136
config 0x1cd (mem-loads)
{ sample_period, sample_freq } 4000
sample_type IP|TID|TIME|ADDR|CPU|PERIOD|IDENTIFIER|DATA_SRC|WEIGHT_STRUCT
read_format ID|LOST
freq 1
precise_ip 3
sample_id_all 1
{ bp_addr, config1 } 0x1f
------------------------------------------------------------
sys_perf_event_open: pid -1 cpu 0 group_fd 5 flags 0x8
sys_perf_event_open failed, error -22
Using PERF_SAMPLE_READ / :S modifier is not compatible with inherit, falling back to no-inherit.
Error:
The sys_perf_event_open() syscall returned with 22 (Invalid argument) for event (cpu/mem-loads,ldlat=30/).
"dmesg | grep -i perf" may provide additional information.

There's an issue with fallback on the inherit bit with the sample read.
I'll take a look.

Thanks,
Namhyung