drm/i915/pmu: replace cpumask_weight with cpumask_empty where appropriate
authorYury Norov <yury.norov@gmail.com>
Sun, 23 Jan 2022 18:38:48 +0000 (10:38 -0800)
committerYury Norov <yury.norov@gmail.com>
Fri, 3 Jun 2022 13:52:57 +0000 (06:52 -0700)
i915_pmu_cpu_online() calls cpumask_weight() to check if any bit of a
given cpumask is set. We can do it more efficiently with cpumask_empty()
because cpumask_empty() stops traversing the cpumask as soon as it finds
first set bit, while cpumask_weight() counts all bits unconditionally.

Signed-off-by: Yury Norov <yury.norov@gmail.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
drivers/gpu/drm/i915/i915_pmu.c

index cfc21042499d08856175291669fcf5f2bfbe6d67..7299ed9937dd9aa523ac0951ca6de236bcb943e2 100644 (file)
@@ -1050,7 +1050,7 @@ static int i915_pmu_cpu_online(unsigned int cpu, struct hlist_node *node)
        GEM_BUG_ON(!pmu->base.event_init);
 
        /* Select the first online CPU as a designated reader. */
-       if (!cpumask_weight(&i915_pmu_cpumask))
+       if (cpumask_empty(&i915_pmu_cpumask))
                cpumask_set_cpu(cpu, &i915_pmu_cpumask);
 
        return 0;