Good day Joey,

I can spot several problems with your manipulations - please see below.  I also suggest to CC the coresight mailing list when looking for support.

On Tue, 10 Dec 2019 at 00:44, Joey Jiao <notifications@github.com> wrote:

Hi,
I have a arm64 device,

perf list pmu

List of pre-defined events (to be used in -e):
cs_etm// [Kernel PMU event]

However I cannot run perf record -e cs_etm successfully.

can you help?

ls /sys/bus/coresight/devices/|grep coresight-etm

coresight-etm0
coresight-etm1
coresight-etm2
coresight-etm3
coresight-etm4
coresight-etm5
coresight-etm6
coresight-etm7


We will need a full list of all the CS devices on your system.  Just listing the ETMs is not sufficient.
 

#2 ls -l /sys/bus/coresight/devices/coresight-etm0
lrwxrwxrwx. 1 root root 0 Dec 7 16:58 /sys/bus/coresight/devices/coresight-etm0 -> ../../../devices/platform/soc/7040000.etm/coresight-etm0

perf record -e cs_etm ls

event syntax error: 'cs_etm'
___ parser error
Run 'perf list' for a list of valid events

Usage: perf record [] []
or: perf record [] -- []

-e, --event <event>   event selector. use 'perf list' to list available events

Yes, that is the expected behavior.  On systems with a 1:N topology a sink needs to be specified.  System with 1:1 topologies aren't supported, hence the request to see all the CS devices on your system (above).
 

perf record -e cs_etm/7040000.etm/ ls

event syntax error: 'cs_etm/7040000.etm/'
___ parser error
Run 'perf list' for a list of valid events

Usage: perf record [] []
or: perf record [] -- []

-e, --event <event>   event selector. use 'perf list' to list available events

Also incorrect.  First the sink needs to be preceded by '@' and actually be a sink - here you have specified a source.  Before going further I advise you to spend some time in the documentation [1].

Thanks,
Mathieu

[1]. https://elixir.bootlin.com/linux/v5.5-rc1/source/Documentation/trace/coresight/coresight.rst
 

perf record -e cs_etm/@7040000.etm/ ls

failed to set config "7040000.etm" on event cs_etm/@7040000.etm/ with 2 (No such file or directory)

I can cat /dev/coresight-tmc-etr > dump.bin after enabled ETM, but perf doesn't work as above stated.

Thanks


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.