Thread (4 messages) 4 messages, 2 authors, 2017-02-07

[PATCH v9] perf: add qcom l2 cache perf events driver

From: mark.rutland@arm.com (Mark Rutland)
Date: 2017-02-07 10:44:32
Also in: linux-arm-msm, lkml

On Mon, Feb 06, 2017 at 02:11:36PM -0500, Leeder, Neil wrote:
Hi Mark,
Thanks for those comments - I'll add the fixes.
Cheers!
On 2/6/2017 10:48 AM, Mark Rutland wrote:
quoted
I'm still concerned by this use of the filter_match callback, because it
depends on the set of other active events, and can change as other
events are scheduled in and out.

When we schedule in two conflicting events A and B in order, B will fail
its filter match. When we scheduled out A and B in order, B will succeed
its filter match.

The perf core does not expect this inconsistency, and this appears to
break the timing update logic in event_sched_out(), when unconditionally
called from ctx_sched_out() as part of perf_rotate_context().

I would feel much happier if we dropped l2_cache_filter_match(), at
least for the timebeing, and handled this as we do for other cases of
intra-pmu resource contention.

We can then consider the filter_match addition on its own at a later
point.
So could this be detected in get_event_idx, the same way we handle
counter resource contention? That would eliminate filter_match, and
it's the same way its done in armv7
(arch/arm/kernel/perf_event_v7.c:krait_pmu_get_event_idx()).
Returning -EAGAIN from event_get_ixd() in that case sounds good to me.

Thanks,
Mark.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help