Again: this is a proof of concept, just spitting out code for comments.
Here's my second attempt.
Changes since version 1:
- Ripped away all the debugfs and event registration from ring buffers.
- Removed the mergesort from the ringbuffer and pushed that up to the
tracer.
- Changed the event header to what Linus suggested (we can discuss this
and try other suggestions for v3, namely Peter Zijlstras ideas).
struct {
u32 time_delta:27, type:5;
u32 data;
u64 array[];
};
- Added timestamp at beginning of each page and implemented a way
for all events to get the full timestamp from the previous.
- The changes to ftrace on this release was much less than the first
one.
Comments?
-- Steve
--