[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ad43aaae-7a76-4dd3-98f2-167962eba7e1@intel.com>
Date: Thu, 12 Jun 2025 11:23:00 -0700
From: Reinette Chatre <reinette.chatre@...el.com>
To: Shaopeng Tan <tan.shaopeng@...fujitsu.com>, <x86@...nel.org>,
<linux-kernel@...r.kernel.org>
CC: James Morse <james.morse@....com>, Yury Norov <yury.norov@...il.com>,
"Dave Martin" <dave.martin@....com>, <fenghuay@...dia.com>,
<peternewman@...gle.com>, Babu Moger <Babu.Moger@....com>, Borislav Petkov
<bp@...en8.de>, <shameerali.kolothum.thodi@...wei.com>,
<bobo.shaobowang@...wei.com>, D Scott Phillips OS
<scott@...amperecomputing.com>, <carl@...amperecomputing.com>, Koba Ko
<kobak@...dia.com>, Shanker Donthineni <sdonthineni@...dia.com>, Xin Hao
<xhao@...ux.alibaba.com>, <baolin.wang@...ux.alibaba.com>,
<lcherian@...vell.com>, <amitsinght@...vell.com>, Ingo Molnar
<mingo@...hat.com>, David Hildenbrand <david@...hat.com>, H Peter Anvin
<hpa@...or.com>, Rex Nie <rex.nie@...uarmicro.com>, Jamie Iles
<quic_jiles@...cinc.com>, <dfustini@...libre.com>, Thomas Gleixner
<tglx@...utronix.de>
Subject: Re: [PATCH 1/2] x86/resctrl: Remove unnecessary cpumask_nth_andnot()
Hi Shaopeng,
The subject contains "x86/resctrl" but the change is actually to
the kernel's bitmap API. Please split this patch from this series and
submit it by itself so that it can be routed correctly (separate from the
resctrl change).
You can use "git log include/linux/cpumask.h" to see how other
patches to the area are formatted. To start it looks like
the subject should have "cpumask:" prefix.
When submitting it upstream it should be routed to:
$ ./scripts/get_maintainer.pl include/linux/cpumask.h
Yury Norov <yury.norov@...il.com> (maintainer:BITMAP API)
Rasmus Villemoes <linux@...musvillemoes.dk> (reviewer:BITMAP API)
linux-kernel@...r.kernel.org (open list)
On 6/10/25 7:15 PM, Shaopeng Tan wrote:
> In commit 94f753143028("x86/resctrl: Optimize cpumask_any_housekeeping()"),
> cpumask_any_andnot_but() replaced cpumask_nth_andnot(),
nit: saying "cpumask_any_andnot_but() replaced cpumask_nth_andnot()" sounds
as though cpumask_any_andnot_but() is a different implementation to accomplish
what cpumask_nth_andnot() does. I do not believe this is the case, for example,
cpumask_any_andnot_but() receives as parameter a CPU to ignore that is not
supported by cpumask_nth_andnot().
I think the main point is that the identified commit switched the only
user of cpumask_nth_andnot() to other cpumask functions, leaving
cpumask_nth_andnot() unused.
> but left the function cpumask_nth_andnot() unused, delete it.
>
> Signed-off-by: Shaopeng Tan <tan.shaopeng@...fujitsu.com>
> ---
> include/linux/cpumask.h | 16 ----------------
> 1 file changed, 16 deletions(-)
>
> diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h
> index 7ae80a7ca81e..498790f74fa8 100644
> --- a/include/linux/cpumask.h
> +++ b/include/linux/cpumask.h
> @@ -546,22 +546,6 @@ unsigned int cpumask_nth_and(unsigned int cpu, const struct cpumask *srcp1,
> small_cpumask_bits, cpumask_check(cpu));
> }
>
> -/**
> - * cpumask_nth_andnot - get the Nth cpu set in 1st cpumask, and clear in 2nd.
> - * @srcp1: the cpumask pointer
> - * @srcp2: the cpumask pointer
> - * @cpu: the Nth cpu to find, starting from 0
> - *
> - * Return: >= nr_cpu_ids if such cpu doesn't exist.
> - */
> -static __always_inline
> -unsigned int cpumask_nth_andnot(unsigned int cpu, const struct cpumask *srcp1,
> - const struct cpumask *srcp2)
> -{
> - return find_nth_andnot_bit(cpumask_bits(srcp1), cpumask_bits(srcp2),
> - small_cpumask_bits, cpumask_check(cpu));
> -}
> -
> /**
> * cpumask_nth_and_andnot - get the Nth cpu set in 1st and 2nd cpumask, and clear in 3rd.
> * @srcp1: the cpumask pointer
Patch looks good to me. Thank you.
Reinette
Powered by blists - more mailing lists