lkml.org 
[lkml]   [2013]   [Jul]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH V2 12/15] perf tools: allow non-matching sample types
From
On Tue, Jul 2, 2013 at 9:09 AM, Adrian Hunter <adrian.hunter@intel.com> wrote:
> On 01/07/13 21:53, David Ahern wrote:
>> On 7/1/13 3:32 AM, Adrian Hunter wrote:
>>> Snip
>>>
>>>>
>>>> While this works for a combined S/W and tracepoint events session, I do not
>>>> like promoting sample types to the minimum compatible level for all events
>>>> in the session. perf needs to allow each event to have its own sample_type
>>>> and not force a minimal compatibility.
>>>
>>> Why? The impact is small. The kernel API is completely unchanged.
>>
>> I'd like to see libperf become a stable, usable library - usable by more
>> than the perf binary and its builtin commands. I have already done this once
>> for a daemon, and it was a PITA to get the specific use functional without
>> memory leaks/growth in the libperf part.
>>
>> With respect to this specific patch it means appropriate flexibility in the
>> data collected for events. ie., each event can have its own sample_type. For
>> example if the tracepoint already contains task information TID is not
>> needed - and IP may not be wanted either. The code processing the samples
>> should not require all events to have some minimum data format - that just
>> wastes buffer space.
>
> It would be more compelling to provide a use-case where that "waste"
> actually makes any difference.
>
In my opinion, it's not so much of the "wasted" space than on the ease of use
for tools. With your change, tools would have to know something about the order
in which sample_type is laid out. And it just happens that it is not
as trivial as
expected. It is NOT the bit position order in sample_type. So this is more error
prone.

I prefer your IDENTIFIER solution better, yet it also implies that this flag is
special. It provides the event ID at the first position in the sample's body.


\
 
 \ /
  Last update: 2013-07-03 09:21    [W:0.123 / U:0.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site