Quoting Tvrtko Ursulin (2017-11-23 07:36:35) > > On 22/11/2017 18:26, Chris Wilson wrote: > > Even for static CPU configurations, the hotplug CPU framework is still > > used to determine the CPU topology, and is still being used by the perf > > event register to check for valid CPUs. > > > > Fixes: b46a33e271ed ("drm/i915/pmu: Expose a PMU interface for perf queries") > > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > > Cc: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx> > > Cc: Dmitry Rogozhkin <dmitry.v.rogozhkin@xxxxxxxxx> > > --- > > drivers/gpu/drm/i915/i915_pmu.c | 8 +------- > > 1 file changed, 1 insertion(+), 7 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/i915_pmu.c b/drivers/gpu/drm/i915/i915_pmu.c > > index 64e36d72e76a..f1e932a3fb85 100644 > > --- a/drivers/gpu/drm/i915/i915_pmu.c > > +++ b/drivers/gpu/drm/i915/i915_pmu.c > > @@ -40,7 +40,7 @@ > > > > #define ENGINE_SAMPLE_BITS (1 << I915_PMU_SAMPLE_BITS) > > > > -static cpumask_t i915_pmu_cpumask = CPU_MASK_NONE; > > +static cpumask_t i915_pmu_cpumask; > > > > static u8 engine_config_sample(u64 config) > > { > > @@ -742,7 +742,6 @@ static const struct attribute_group *i915_pmu_attr_groups[] = { > > NULL > > }; > > > > -#ifdef CONFIG_HOTPLUG_CPU > > static int i915_pmu_cpu_online(unsigned int cpu, struct hlist_node *node) > > { > > struct i915_pmu *pmu = hlist_entry_safe(node, typeof(*pmu), node); > > @@ -779,11 +778,9 @@ static int i915_pmu_cpu_offline(unsigned int cpu, struct hlist_node *node) > > } > > > > static enum cpuhp_state cpuhp_slot = CPUHP_INVALID; > > -#endif > > > > static int i915_pmu_register_cpuhp_state(struct drm_i915_private *i915) > > { > > -#ifdef CONFIG_HOTPLUG_CPU > > enum cpuhp_state slot; > > int ret; > > > > @@ -802,17 +799,14 @@ static int i915_pmu_register_cpuhp_state(struct drm_i915_private *i915) > > } > > > > cpuhp_slot = slot; > > -#endif > > return 0; > > } > > > > static void i915_pmu_unregister_cpuhp_state(struct drm_i915_private *i915) > > { > > -#ifdef CONFIG_HOTPLUG_CPU > > WARN_ON(cpuhp_slot == CPUHP_INVALID); > > WARN_ON(cpuhp_state_remove_instance(cpuhp_slot, &i915->pmu.node)); > > cpuhp_remove_multi_state(cpuhp_slot); > > -#endif > > } > > > > void i915_pmu_register(struct drm_i915_private *i915) > > > > You are saying CPU hotplug events are firing with CONFIG_HOTPLUG_CPU=n? Yes. Both in practice and copying from other perf pmus. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx