OSDN Git Service

padata: replace cpumask_weight with cpumask_empty in padata.c
authorYury Norov <yury.norov@gmail.com>
Sun, 23 Jan 2022 18:38:52 +0000 (10:38 -0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 31 Jan 2022 00:21:46 +0000 (11:21 +1100)
padata_do_parallel() 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>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
kernel/padata.c

index 18d3a5c..e5819bb 100644 (file)
@@ -181,7 +181,7 @@ int padata_do_parallel(struct padata_shell *ps,
                goto out;
 
        if (!cpumask_test_cpu(*cb_cpu, pd->cpumask.cbcpu)) {
-               if (!cpumask_weight(pd->cpumask.cbcpu))
+               if (cpumask_empty(pd->cpumask.cbcpu))
                        goto out;
 
                /* Select an alternate fallback CPU and notify the caller. */