On Wed, 2017-08-23 at 08:26 -0700, Dmitry Rogozhkin wrote: > +static cpumask_t i915_pmu_cpumask = CPU_MASK_CPU0; Peter, this hardcoding of cpumask to use CPU0 works, but should I implement something smarter or this will be sufficient? I see that cstate.c you have pointed me to tries to track CPUs going online/offline and migrates PMU context to another CPU if selected one went offline. Should I follow this way? If I should track CPUs going online/offline, then I have questions: 1. How I should register tracking callbacks? I see that cstate.c registers CPUHP_AP_PERF_X86_CSTATE_STARTING and CPUHP_AP_PERF_X86_CSTATE_ONLINE, uncore.c registers CPUHP_AP_PERF_X86_UNCORE_ONLINE. What I should use? I incline to UNCORE. 2. If I will register for, say UNCORE, then how double registrations will be handled if both uncore.c and i915.c will register callbacks? Any conflict here? 3. What I should pass as 2nd argument? Will "perf/x86/intel/i915:online" be ok? _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx