diff mbox series

[17/54] gpu: drm: replace cpumask_weight with cpumask_empty where appropriate

Message ID 20220123183925.1052919-18-yury.norov@gmail.com (mailing list archive)
State New, archived
Headers show
Series None | expand

Commit Message

Yury Norov Jan. 23, 2022, 6:38 p.m. UTC
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>
---
 drivers/gpu/drm/i915/i915_pmu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Tvrtko Ursulin Jan. 25, 2022, 9:28 a.m. UTC | #1
On 23/01/2022 18:38, Yury Norov wrote:
> 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>
> ---
>   drivers/gpu/drm/i915/i915_pmu.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_pmu.c b/drivers/gpu/drm/i915/i915_pmu.c
> index ea655161793e..1894c876b31d 100644
> --- a/drivers/gpu/drm/i915/i915_pmu.c
> +++ b/drivers/gpu/drm/i915/i915_pmu.c
> @@ -1048,7 +1048,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;
> 

Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

I see it's a large series which only partially appeared on our mailing 
lists. So for instance it hasn't got tested by our automated CI. (Not 
that I expect any problems in this patch.)

What are the plans in terms of which tree will it get merged through?

Regards,

Tvrtko
Yury Norov Jan. 25, 2022, 6:16 p.m. UTC | #2
On Tue, Jan 25, 2022 at 1:28 AM Tvrtko Ursulin
<tvrtko.ursulin@linux.intel.com> wrote:
>
>
> On 23/01/2022 18:38, Yury Norov wrote:
> > 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>
> > ---
> >   drivers/gpu/drm/i915/i915_pmu.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_pmu.c b/drivers/gpu/drm/i915/i915_pmu.c
> > index ea655161793e..1894c876b31d 100644
> > --- a/drivers/gpu/drm/i915/i915_pmu.c
> > +++ b/drivers/gpu/drm/i915/i915_pmu.c
> > @@ -1048,7 +1048,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;
> >
>
> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>
> I see it's a large series which only partially appeared on our mailing
> lists.

The series is here: https://lkml.org/lkml/2022/1/23/223
The branch: https://github.com/norov/linux/tree/bitmap-20220123

> So for instance it hasn't got tested by our automated CI. (Not
> that I expect any problems in this patch.)

Would be great if you give a test for the whole series, thanks!

> What are the plans in terms of which tree will it get merged through?

For the patches that will not be merged by maintainers of corresponding
subsystems, I'll use my bitmap branch and send it to linux-next.

Thanks,
Yury
Tvrtko Ursulin Jan. 26, 2022, 9:43 a.m. UTC | #3
On 25/01/2022 18:16, Yury Norov wrote:
> On Tue, Jan 25, 2022 at 1:28 AM Tvrtko Ursulin
> <tvrtko.ursulin@linux.intel.com> wrote:
>>
>>
>> On 23/01/2022 18:38, Yury Norov wrote:
>>> 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>
>>> ---
>>>    drivers/gpu/drm/i915/i915_pmu.c | 2 +-
>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/i915_pmu.c b/drivers/gpu/drm/i915/i915_pmu.c
>>> index ea655161793e..1894c876b31d 100644
>>> --- a/drivers/gpu/drm/i915/i915_pmu.c
>>> +++ b/drivers/gpu/drm/i915/i915_pmu.c
>>> @@ -1048,7 +1048,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;
>>>
>>
>> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>>
>> I see it's a large series which only partially appeared on our mailing
>> lists.
> 
> The series is here: https://lkml.org/lkml/2022/1/23/223
> The branch: https://github.com/norov/linux/tree/bitmap-20220123
> 
>> So for instance it hasn't got tested by our automated CI. (Not
>> that I expect any problems in this patch.)
> 
> Would be great if you give a test for the whole series, thanks!

Can't really test the whole series for you, but if you want to send just 
the i915 patch standalone to the intel-gfx mailing list, that would 
trigger the CI run and if that passes we can merge that single one.

>> What are the plans in terms of which tree will it get merged through?
> 
> For the patches that will not be merged by maintainers of corresponding
> subsystems, I'll use my bitmap branch and send it to linux-next.

Or I guess we can wait for them to trickle back to us this way.

Regards,

Tvrtko
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/i915_pmu.c b/drivers/gpu/drm/i915/i915_pmu.c
index ea655161793e..1894c876b31d 100644
--- a/drivers/gpu/drm/i915/i915_pmu.c
+++ b/drivers/gpu/drm/i915/i915_pmu.c
@@ -1048,7 +1048,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;