Re: [PATCH 13/15] perf_counter: provide generic callchain bits

From: Peter Zijlstra
Date: Tue Mar 31 2009 - 02:38:47 EST


On Tue, 2009-03-31 at 17:12 +1100, Paul Mackerras wrote:
> Peter Zijlstra writes:
>
> > include_tid : 1, /* include the tid */
> > mmap : 1, /* include mmap data */
> > munmap : 1, /* include munmap data */
> > + callchain : 1, /* add callchain data */
>
> Interesting, I would have put callchain (and include_tid, also) in
> hw_event.record_type rather than as individual 1-bit fields. The
> present arrangement where some selection of what goes into the ring
> buffer is in record_type and some is in individual bits seems a bit
> awkward. Plus, with the current arrangement I can't get both the IP
> and the values of the other group members, which I might reasonable
> want.
>
> I think either we make record_type bit-significant, or we define
> individual bits in hw_event for recording the IP and other group
> members.
>
> There are a couple of other things I want to be able to record on an
> event - we have registers on powerpc that give information about the
> event that caused the interrupt, and it would be nice to be able to
> record them. (These registers include instruction and data addresses
> associated with the event; the instruction address can be further on
> from where the interrupt was taken because of out-of-order instruction
> execution and because interrupts might be hard-disabled at the point
> where the interrupt becomes pending.)
>
> Those registers would need bits in record_type or in the hw_event to
> indicate that we want them recorded.

Sure, I'm fine with moving them to record_type and making that a bit
field. I've also considered merging the group and 'simple' output to
enable what you say.



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