Messages in this thread | | | Subject | Re: [PATCH v2] perf/x86: fix SNB-EP CBOX and PCU uncore PMU filter management | From | Peter Zijlstra <> | Date | Tue, 21 Aug 2012 14:06:32 +0200 |
| |
On Tue, 2012-08-21 at 13:59 +0200, Stephane Eranian wrote: > The existing code had a bug whereby it would refuse to > measure two events in a group for either CBO or PCU PMUs, > if one of the events was using a filter. This was due to > the fact that the kernel assumed all CBO and PCU events > were using filters, and thus would detect false positive > conflicts between attr->config1 values. > > This patch fixes the problem by introducing the extra_reg > event mapping tables for both CBO and PCU PMUs. Those > tables associate an event code+umask with extra (filter) > register. We used the same approach for the offcore_response > core PMU event. > > With this patch applied, it is possible to measure, for > instance, CBO unc_c_tor_inserts:opcode:pcirdcur with > unc_c_clockticks in the same group. > > The filter for both CBO and PCU are more complex than what the > current code support. Each filter is sub-divided into event > specific filters. For now, we consider the filter as one single > MSR value. We lose a bit of flexibility and force multiplexing > when this is not really necessary in HW. We could later create > the notion of virtual filters that would be aggregated at the > last step (wrmsrl). But I think this is good enough for now.
Thanks, added Zheng Yan's ACK as well since its essentially the same patch.
| |