Re: [PATCH RFC] hist lookups

From: David Miller
Date: Sun Nov 11 2018 - 18:08:05 EST


From: Jiri Olsa <jolsa@xxxxxxxxxx>
Date: Sun, 11 Nov 2018 20:41:32 +0100

> On Thu, Nov 08, 2018 at 05:07:21PM -0800, David Miller wrote:
>> From: Jiri Olsa <jolsa@xxxxxxxxxx>
>> Date: Thu, 8 Nov 2018 08:13:03 +0100
>>
>> > we could separated fork/mmaps to separate dummy event map, or just
>> > parse them out in the read thread and create special queue for them
>> > and drop just samples in case we are behind
>>
>> What you say at the end here is basically what I am proposing.
>>
>> Perf dequeues events from mmap ring as fast as possible.
>>
>> Perf has two internal queues, high priority and low priority.
>>
>> High priority events are never dropped.
>>
>> Low priority events are dropped on overload, oldest first.
>
> I added the dropping logic, it's simple so far..

So for me perf top gets into a state where the samples counter stops
incrementing, but the event counter does keep moving (which is the
histogram code decaying histogram entries from the display thread).

Which means the event processing has basically stopped.

The event threads are not stuck in a loop, because they respond to
the "q" keypress and we can exit.