Currently starting CoreSight tracing using perf requires a sink selection on the command line:-
sudo ./perf record -e cs_etm/@tmc_etr0/ --per-thread uname -a
Not providing the @<sink> here results in an error and no trace produced.
After this set (alongside the CoreSight change set [1]) the infrastructure will be able to select a default sink:-
sudo ./perf record -e cs_etm// --per-thread uname -a
This matches with the default operation provided with perf and intelpt.
This patch removes the check that a sink value is provided on the command line with a NULL value passed to the CoreSight infrastructure if omitted.
Note: If this set is applied to a system without [1], then the effect is benign as the existing CoreSight infrastructure will detect the error and refuse to trace.
Applies to Linux coresight/next branch
[1] http://lists.infradead.org/pipermail/linux-arm-kernel/2020-May/734854.html
Changes since v3: 1) Removed RFC designation and distributed to wider audience. 2) Split set into perf user runtime (this set), and CoreSight driver code.
Mike Leach (1): perf: cs-etm: Allow no CoreSight sink to be specified on command line
tools/perf/arch/arm/util/cs-etm.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)