Re: [BUG] perf report: ordered events and flushing bug

From: David Ahern
Date: Thu Mar 12 2015 - 15:53:41 EST


On 3/12/15 1:39 PM, Stephane Eranian wrote:
What the point of having all the ordered event logic if you are saying events
must be saved in order. I don't think there is a way to make that guarantee
when monitoring multiple CPUs at the same time.

The record command does not analyze the events, it just copies from mmap to file in lumps per mmap. e.g., on a given round the perf data file has events like this:

111112223344444444555566666F111111111
|<------- round --------->|^
|
finished round event -|

where 11111 are events read from mmap1, 2222 are events from mmap2, etc. F is the finished round event which a pass over all mmaps has been done.

So for mmap1 all of the 11111 events are in time order, then jumping to mmap2 events the 2222 times are time sorted relative to mmap2 but not relative to mmap1 events.

The ordered events code sorts the clumps into a time based stream:
123141641445124564234645656...

David
--
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/