Re: [PATCH] perf/x86/intel: Drop kernel samples even though :u is specified

From: Jin, Yao
Date: Fri May 19 2017 - 08:24:43 EST




On 5/19/2017 8:10 PM, Peter Zijlstra wrote:
On Fri, May 19, 2017 at 08:06:09PM +0800, Jin, Yao wrote:
SNIP

I would much rather see this in generic code, somewhere around
__perf_event_overflow() I suppose. That would retain proper accounting
for the interrupt rate etc..

Also it would work for all architectures. Because I'm thinking more than
just x86 will suffer from skid.
Yes, moving to generic code is better. Thanks for the suggestion! I will do
that.

If you're really worried, I suppose you can put it behind a PERF_PMU_CAP
flag or something.
I guess what you are suggesting is to add checking like:

if (is_sampling_event(event)) {
if (event->pmu->capabilities & PERF_PMU_CAP_NO_INTERRUPT) {
return;
}
}
Ah, I was more thinking of something like PERF_PMU_CAP_NO_SKID or
something that would skip the test and preserve current behaviour.

OK, I understand now. For example, for PEBS event, its capabilities should be set with PERF_PMU_CAP_NO_SKID.

If the event's capabilities is set with PERF_PMU_CAP_NO_SKID, it should skip the checking and keep current behavior.

Thanks
Jin Yao