Peter Zijlstra <[email protected]> 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 [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

