Re: [PATCH] Documentation: coresight: Update the generic device names

From: Mathieu Poirier
Date: Fri Jun 07 2019 - 12:03:30 EST


On Fri, 7 Jun 2019 at 02:40, Suzuki K Poulose <suzuki.poulose@xxxxxxx> wrote:
>
> Hi Leo,
>
> >>>> A Coresight PMU works the same way as any other PMU, i.e the name of the PMU is
> >>>> listed along with configuration options within forward slashes '/'. Since a
> >>>> Coresight system will typically have more than one sink, the name of the sink to
> >>>> -work with needs to be specified as an event option. Names for sink to choose
> >>>> -from are listed in sysFS under ($SYSFS)/bus/coresight/devices:
> >>>> +work with needs to be specified as an event option.
> >>>> +On newer kernels the available sinks are listed in sysFS under:
> >>>> +($SYSFS)/bus/event_source/devices/cs_etm/sinks/
> >>>> - root@linaro-nano:~# ls /sys/bus/coresight/devices/
> >>>> - 20010000.etf 20040000.funnel 20100000.stm 22040000.etm
> >>>> - 22140000.etm 230c0000.funnel 23240000.etm 20030000.tpiu
> >>>> - 20070000.etr 20120000.replicator 220c0000.funnel
> >>>> - 23040000.etm 23140000.etm 23340000.etm
> >>>> + root@localhost:/sys/bus/event_source/devices/cs_etm/sinks# ls
> >>>> + tmc_etf0 tmc_etr0 tpiu0
> >>>> - root@linaro-nano:~# perf record -e cs_etm/@20070000.etr/u --per-thread program
> >>>> +On older kernels, this may need to be found from the list of coresight devices,
> >>>> +available under ($SYSFS)/bus/coresight/devices/:
> >>>> +
> >>>> + root@localhost:/sys/bus/coresight/devices# ls
> >>>> + etm0 etm1 etm2 etm3 etm4 etm5 funnel0 funnel1 funnel2 replicator0 stm0 tmc_etf0 tmc_etr0 tpiu0
> >>>> +
> >>>> + root@linaro-nano:~# perf record -e cs_etm/@tmc_etr0/u --per-thread program
> >>>
> >>> On the "older" kernels you are referring to one would find the original naming
> >>> convention. Everything else looks good to me.
> >>
> >> True, but do we care what we see there ? All we care about is the location,
> >> where to find them. I could fix it, if you think thats needed.
> >
> > IIUC, either the old kernel or newer kernel, both we can find the event
> > from ($SYSFS)/bus/event_source/devices/cs_etm/sinks/; the only
> > difference between them is the naming convention.
>
> The cs_etm/sinks was only added with the CPU-wide trace support. So, if someone
> refers to this document alone and then tries to do something on on older kernel,
> which is quite possible for a production device running a stable kernel, {s,}he
> might be surprised.
>
> >
> > So the doc can use the same location to find event for both new and
> > old kernel, and explain the naming convention difference?
>
> My question is really, does the naming convention matter ? What you see
> under the directory is the name. But yes, I am open to add a section to
> explain the fact that we changed the naming scheme, if everyone agrees
> to it.

I think it would be preferable to mention the change - just a small
section that describes what happened and the reason for doing so will
be fine.

>
> Cheers
> Suzuki