Re: [PATCH v0 3/5] perf: Introduce instruction trace filtering

From: Alexander Shishkin
Date: Fri Dec 11 2015 - 09:20:57 EST


Peter Zijlstra <peterz@xxxxxxxxxxxxx> writes:

> On Fri, Dec 11, 2015 at 03:36:36PM +0200, Alexander Shishkin wrote:
>
>> The pmu driver interface basically adds an extra callback to the
>> pmu driver structure, which validates the filter configuration proposed
>> by the user against what the hardware is actually capable of doing
>> and translates it into something that pmu::start can program into
>> hardware.
>
>> @@ -388,12 +393,38 @@ struct pmu {
>> void (*free_aux) (void *aux); /* optional */
>>
>> /*
>> + * Validate instruction tracing filters: make sure hw supports the
>> + * requested configuration and number of filters.
>> + *
>> + * Configure instruction tracing filters: translate hw-agnostic filter
>> + * into hardware configuration in event::hw::itrace_filters
>> + */
>> + int (*itrace_filter_setup) (struct perf_event *event); /* optional */
>> +
>> + /*
>> * Filter events for PMU-specific reasons.
>> */
>> int (*filter_match) (struct perf_event *event); /* optional */
>> };
>
> Any reason you cannot use pmu::filter_match ?

It's for filtering out events that we want to skip over while iterating
various event lists, it's also used in quite a few places (which are
also relevant to our pmus), so I couldn't see how to re-use it.

Thanks,
--
Alex
--
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/