Re: [PATCH 24/49] mm/vmstat: replace cpumask_weight with cpumask_empty where appropriate

From: Mike Rapoport
Date: Fri Feb 11 2022 - 05:40:52 EST


On Thu, Feb 10, 2022 at 02:49:08PM -0800, Yury Norov wrote:
> mm/vmstat.c code 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@xxxxxxxxx>

Acked-by: Mike Rapoport <rppt@xxxxxxxxxxxxx>

> ---
> mm/vmstat.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/mm/vmstat.c b/mm/vmstat.c
> index d5cc8d739fac..27a94afd4ee5 100644
> --- a/mm/vmstat.c
> +++ b/mm/vmstat.c
> @@ -2041,7 +2041,7 @@ static void __init init_cpu_node_state(void)
> int node;
>
> for_each_online_node(node) {
> - if (cpumask_weight(cpumask_of_node(node)) > 0)
> + if (!cpumask_empty(cpumask_of_node(node)))
> node_set_state(node, N_CPU);
> }
> }
> @@ -2068,7 +2068,7 @@ static int vmstat_cpu_dead(unsigned int cpu)
>
> refresh_zone_stat_thresholds();
> node_cpus = cpumask_of_node(node);
> - if (cpumask_weight(node_cpus) > 0)
> + if (!cpumask_empty(node_cpus))
> return 0;
>
> node_clear_state(node, N_CPU);
> --
> 2.32.0
>
>

--
Sincerely yours,
Mike.