Thread (19 messages) flat view 19 messages, 5 authors, 2014-09-16

Re: [RFC 2/2] perf: Marker software event and ioctl

From: Ingo Molnar <hidden>
Date: 2014-09-16 17:58:41
Also in: lkml

* Pawel Moll [off-list ref] wrote:
On Tue, 2014-09-16 at 08:44 +0100, Ingo Molnar wrote:
quoted
I think adding an ioctl to inject user-provided data into the 
event stream is sensible, as long as there's a separate 'user 
generated data' event for it, etc.

The main usecase I could see would be to introduce a 
perf_printf() variant, supported by 'perf trace' by default, to 
add various tracable printouts to apps.

Timestamps generated by apps would be another usecase. It would 
probably be wise to add a 32-bit (or 64-bit) message type ID, 
plus a length field, with a message type registry somewhere in 
tools/perf/ (and reference implementation for each new subtype), 
to keep things organized yet flexible going forward.
Right, so this is pretty much what I got talking to Arnaldo...
quoted
      { u64 type; /* 0 means zero-terminated string in data */
        u32 size;
        char data[size]; } && PERF_SAMPLE_MARKER
... with one type - 0 - defined as a "universal" string (so any 
possible tool knows what to do about it), the rest being left 
to userspace (this "registry" you mention).

Before I proceed any further, is the term "marker" acceptable? 
Maybe a "printf" instead? Or a "log"? As we know naming is 
often single most discussed subject when it comes to new things 
in the kernel ;-)
Well, it's a user-space generated trace/event entry, so lets call 
it that?

Thanks,

	Ingo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help