[<prev] [next>] [day] [month] [year] [list]
Message-ID: <CAAH8bW-=baSvb6pY+9t=5Fn6DA56G3eTJP0uBeXDZsVuDkHr9g@mail.gmail.com>
Date: Sun, 10 Apr 2022 14:17:18 -0700
From: Yury Norov <yury.norov@...il.com>
To: Ozgur <ozgur@...ux.com>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-tip-commits@...r.kernel.org"
<linux-tip-commits@...r.kernel.org>,
Thomas Gleixner <tglx@...utronix.de>,
"x86@...nel.org" <x86@...nel.org>,
"maz@...nel.org" <maz@...nel.org>, Ming Lei <ming.lei@...hat.com>
Subject: Re: [tip: irq/core] genirq/affinity: Replace cpumask_weight() with
cpumask_empty() where appropriate
On Sun, Apr 10, 2022 at 1:35 PM Ozgur <ozgur@...ux.com> wrote:
>
>
>
> 10.04.2022, 23:27, "tip-bot2 for Yury Norov" <tip-bot2@...utronix.de>:
>
> The following commit has been merged into the irq/core branch of tip:
>
> Commit-ID: 911488de0565f1d53bd36174d20917ebc4b44c0e
> Gitweb: https://git.kernel.org/tip/911488de0565f1d53bd36174d20917ebc4b44c0e
> Author: Yury Norov <yury.norov@...il.com>
> AuthorDate: Thu, 10 Feb 2022 14:49:05 -08:00
> Committer: Thomas Gleixner <tglx@...utronix.de>
> CommitterDate: Sun, 10 Apr 2022 22:20:28 +02:00
>
> genirq/affinity: Replace cpumask_weight() with cpumask_empty() where appropriate
>
> __irq_build_affinity_masks() calls cpumask_weight() to check if any bit of
> a given cpumask is set.
>
> This can be done 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.
>
> Hello,
> in this patch, struct cpumask *nmsk will also be affected because is called ncpus = cpumask_weight(nmsk);
> right?
Sorry, I don't understand that. The line that you mentioned can't
modify nmsk neither before
nor after this patch. Can you clarify your concern in greater details?
Thanks,
Yury
> Signed-off-by: Yury Norov <yury.norov@...il.com>
> Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
> Link: https://lore.kernel.org/r/20220210224933.379149-22-yury.norov@gmail.com
>
> ---
> kernel/irq/affinity.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/irq/affinity.c b/kernel/irq/affinity.c
> index f7ff891..18740fa 100644
> --- a/kernel/irq/affinity.c
> +++ b/kernel/irq/affinity.c
> @@ -258,7 +258,7 @@ static int __irq_build_affinity_masks(unsigned int startvec,
> nodemask_t nodemsk = NODE_MASK_NONE;
> struct node_vectors *node_vectors;
>
> - if (!cpumask_weight(cpu_mask))
> + if (cpumask_empty(cpu_mask))
> return 0;
>
> nodes = get_nodes_in_cpumask(node_to_cpumask, cpu_mask, &nodemsk);
>
>
> Ozgur
Powered by blists - more mailing lists