Hi Linu
On 11/10/20 12:57 PM, Linu Cherian wrote:
Hi Suzuki,
...
We are facing some issues while trying out perf. This doesn't appear to be related to your patch though. Will share the details once we do some initial analysis on it.
Thanks.
# ./perf record -vvv -e cs_etm// --per-thread uname -a Using CPUID 0x00000000430f0b40 Attempting to add event pmu 'cs_etm' with '' that may result in non-fatal errors nr_cblocks: 0 affinity: SYS mmap flush: 1 comp level: 0 maps__set_modules_path_dir: cannot open /lib/modules/5.9.0-rc5-00116-g91c9ea890e1a dir Problems setting modules path maps, continuing anyway...
perf_event_attr: type 8 size 120 { sample_period, sample_freq } 1 sample_type IP|TID|IDENTIFIER read_format ID disabled 1 enable_on_exec 1 sample_id_all 1 exclude_guest 1
sys_perf_event_open: pid 3333 cpu -1 group_fd -1 flags 0x8 = 5
perf_event_attr: type 1 size 120 config 0x9 { sample_period, sample_freq } 1 sample_type IP|TID|IDENTIFIER read_format ID disabled 1 exclude_kernel 1 exclude_hv 1 mmap 1 comm 1 enable_on_exec 1 task 1 sample_id_all 1 exclude_guest 1 mmap2 1 comm_exec 1 context_switch 1 ksymbol 1 bpf_event 1
sys_perf_event_open: pid 3333 cpu -1 group_fd -1 flags 0x8 = 6 mmap size 589824B AUX area mmap length 4194304
perf_event_attr: type 1 size 120 config 0x9 watermark 1 sample_id_all 1 bpf_event 1 { wakeup_events, wakeup_watermark } 1
sys_perf_event_open: pid -1 cpu -1 group_fd -1 flags 0x8 sys_perf_event_open failed, error -22 switching off bpf_event
perf_event_attr: type 1 size 120 config 0x9 watermark 1 sample_id_all 1 { wakeup_events, wakeup_watermark } 1
sys_perf_event_open: pid -1 cpu -1 group_fd -1 flags 0x8 sys_perf_event_open failed, error -22 switching off cloexec flag
perf_event_attr: type 1 size 120 config 0x9 watermark 1 sample_id_all 1 { wakeup_events, wakeup_watermark } 1
sys_perf_event_open: pid -1 cpu -1 group_fd -1 flags 0 sys_perf_event_open failed, error -22 switching off sample_id_all
perf_event_attr: type 1 size 120 config 0x9 watermark 1 { wakeup_events, wakeup_watermark } 1
sys_perf_event_open: pid -1 cpu -1 group_fd -1 flags 0 sys_perf_event_open failed, error -22 Couldn't start the BPF side band thread: BPF programs starting from now on won't be annotatable Synthesizing auxtrace information cannot find cgroup mount point Couldn't synthesize cgroup events. Control descriptor is not initialized Linux marvell 5.9.0-rc5-00116-g91c9ea890e1a #823 SMP PREEMPT Tue Nov 10 10:49:15 IST 2020 aarch64 aarch64 aarch64 GNU/Linux
auxtrace idx 0 old 0 head 0xdd50 diff 0xdd50
I haven't seen this in the normal verbose output.
[ perf record: Woken up 1 times to write data ] symbol:init_start file:(null) line:0 offset:0 return:0 lazy:(null) snip .. symbol:memory_mallopt file:(null) line:0 offset:0 return:0 lazy:(null) failed to write feature CPUDESC failed to write feature MEM_TOPOLOGY failed to write feature CPU_PMU_CAPS [ perf record: Captured and wrote 0.056 MB perf.data ]
# ./perf report 0x368 [0x50]: failed to process type: 1 [Cannot allocate memory] Error: failed to process sample
I have no clue about it. Are you able to run it under GDB ? (Looks like you have built the perf, so if you have sources, it may be a good idea to run under the GDB and figure out where that error is coming from).
Also, what is
perf --version ?
# To display the perf.data header info, please use --header/--header-only option
============================================================================
Appreciate your help on getting some debug hints on what is going wrong.
One strange thing noted here is sys_perf_event_open, passing cpu = -1 and pid = -1, which doesnt appear to be valid as per tools/perf/design.txt
I see that on my Juno, but it still works. I believe that is for the generic PMU (pmu.type == 1) and not the coresight PMU, which I believe is (type == 8) in your case (the first event).
Suzuki