Jiri Olsa [jo...@redhat.com] wrote:

<snip>
| > Description of the sysfs contents when events are parameterized (copied 
from an
| > included patch):
| > 
| >     Examples:
| > 
| >             domain=0x1,offset=0x8,starting_index=phys_cpu
| > 
| >     In the case of the last example, a value replacing "phys_cpu"
| >     would need to be provided by the user selecting the particular
| >     event. This is refered to as "event parameterization". All
| >     non-numerical values indicate an event parameter.
| > 
| > Notes on how perf-list displays parameterized events (and how to use them,
| > again culled from an included patch):
| > 
| >     PARAMETERIZED EVENTS
| >     --------------------
| > 
| >     Some pmu events listed by 'perf-list' will be displayed with '?' in
| >     them. For example:
| > 
| >       hv_gpci/dtbp_ptitc,phys_processor_idx=?/
| > 
| >     This means that when provided as an event, a value for
| >     phys_processor_idx must also be supplied. For example:
| > 
| >       perf stat -e 'hv_gpci/dtbp_ptitc,phys_processor_idx=0x2/' ...
| 
| hi,
| is the reason for this to document this field for event
| in "events/<event>" file?

We are trying to document that for the parameters that have the ? in
perf list, the parameter must be specified otherwise the event will
not be recognized.

| 
| Because once you have the field (phys_processor_idx) defined in
| "formats/phys_processor_idx" you should be able to use it as in
| your example:
| 
|    perf stat -e 'hv_gpci/dtbp_ptitc,phys_processor_idx=0x2/'
| 
| without any changes

For some events 'starting_index' refers to physical processor index
as shown in the sysfs entry:

        $ cd /sys/bus/event_source/devices/hv_gpci/events
        $ cat dispatch_timebase_by_processor_processor_time_in_timebase_cycles
        
request=0x10,starting_index=phys_processor_idx,counter_info_version=0x8,length=8,offset=0

and 'perf list' for this entry shows 'starting_index' with a ?
indicating it is a requireed parameter.

IIUC, rather than have the user specify a value for 'phys_processor_idx'

        -e hv_gpci/dtbp_ptitc,phys_processor_idx=4/'

we would use following right ?

        -e hv_gpci/dtbp_ptitc,starting_index=4/'

If so, I think the interface change makes sense.  perf list would also
show 'starting_index=?' for the event. 

But in the sysfs entry, rather than show 'starting_index=?', should we
leave it as:

        'starting_index=phys_processor_idx' 

For some events 'startind_index' refers to a physical processor id
and for others it is virtual processor id. So, showing phys_processor_idx
could serve as a hint.

Michael, Cody, Ingo, Peter, let me know if you agree or have other
comments on the inteface.

Thanks,

Sukadev



| 
| thanks,
| jirka

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to