On Tue, Jun 11, 2013 at 06:42:26PM +0200, Robert Richter wrote: > The basic concept is to use a pmu as an event container for persistent > events. The pmu registers events in sysfs and provides format and > event information for the userland. The persistent event framework > requires to add events to the pmu dynamically. > > With the information in sysfs userland knows about how to setup the > perf_event attribute of a persistent event. Since a persistent event > always has the persistent flag set, a way is needed to express this in > sysfs. A new syntax is used for this. With 'attr<num>:<mask>' any bit > in the attribute structure may be set in a similar way as using > 'config<num>', but <num> is an index that points to the u64 value to > change within the attribute. > > For persistent events the persistent flag (bit 23 of flag field in > struct perf_event_attr) needs to be set which is expressed in sysfs > with "attr5:23". E.g. the mce_record event is described in sysfs as > follows: > > > /sys/bus/event_source/devices/persistent/events/mce_record:persistent,config=106 > /sys/bus/event_source/devices/persistent/format/persistent:attr5:23 >
Ok so it took me a little to 'get' this PMU 'abuse', but I suppose I can go along with it ;-) On the specifics though; it again seems to hard assume persistent events are for tracepoints only -- either make this very explicit or remove it. -- 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/