Messages in this thread | | | Subject | Re: [PATCH 3/7] perf, x86: Implement IBS event configuration | From | Peter Zijlstra <> | Date | Wed, 14 Sep 2011 17:35:32 +0200 |
| |
On Wed, 2011-09-07 at 18:36 +0200, Robert Richter wrote: > +static struct perf_ibs perf_ibs_fetch = { > + .pmu = { > + .event_init = perf_ibs_init, > + .add = perf_ibs_add, > + .del = perf_ibs_del, > + }, > + .msr = MSR_AMD64_IBSFETCHCTL, > + .config_mask = IBS_FETCH_CONFIG_MASK, > + .cnt_mask = IBS_FETCH_MAX_CNT, > + .enable_mask = IBS_FETCH_ENABLE, > +}; > + > +static struct perf_ibs perf_ibs_op = { > + .pmu = { > + .event_init = perf_ibs_init, > + .add = perf_ibs_add, > + .del = perf_ibs_del, > + }, > + .msr = MSR_AMD64_IBSOPCTL, > + .config_mask = IBS_OP_CONFIG_MASK, > + .cnt_mask = IBS_OP_MAX_CNT, > + .enable_mask = IBS_OP_ENABLE, > };
Both those .pmu things want:
.task_ctx_nr = perf_invalid_context,
disabling per-task events, or you need to create a new context and somehow fix per-task scheduling for these two things.
Adding two task contexts (one for each type) really isn't nice.
| |