]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
cpumask: Remove unnecessary cpumask_nth_andnot()
authorShaopeng Tan <tan.shaopeng@jp.fujitsu.com>
Mon, 23 Jun 2025 07:46:45 +0000 (16:46 +0900)
committerYury Norov <yury.norov@gmail.com>
Thu, 31 Jul 2025 15:28:03 +0000 (11:28 -0400)
Commit 94f753143028("x86/resctrl: Optimize cpumask_any_housekeeping()")
switched the only user of cpumask_nth_andnot() to other cpumask
functions, but left the function cpumask_nth_andnot() unused.
This makes function find_nth_andnot_bit() unused as well. Delete them.

Signed-off-by: Shaopeng Tan <tan.shaopeng@jp.fujitsu.com>
Signed-off-by: Yury Norov [NVIDIA] <yury.norov@gmail.com>
include/linux/cpumask.h
include/linux/find.h

index 39b71b662da384fd043c0d3b201f8e80cfd6151e..4bda089fbe5dcc2e5836b7cdf77cdfd1bf90c18f 100644 (file)
@@ -558,22 +558,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
index 98c61838002c0861e9a7e0b24bece396a29fb4bb..9d720ad92bc15d25ac2abd0f0353310dc73cc2c7 100644 (file)
@@ -269,33 +269,6 @@ unsigned long find_nth_and_bit(const unsigned long *addr1, const unsigned long *
        return __find_nth_and_bit(addr1, addr2, size, n);
 }
 
-/**
- * find_nth_andnot_bit - find N'th set bit in 2 memory regions,
- *                      flipping bits in 2nd region
- * @addr1: The 1st address to start the search at
- * @addr2: The 2nd address to start the search at
- * @size: The maximum number of bits to search
- * @n: The number of set bit, which position is needed, counting from 0
- *
- * Returns the bit number of the N'th set bit.
- * If no such, returns @size.
- */
-static __always_inline
-unsigned long find_nth_andnot_bit(const unsigned long *addr1, const unsigned long *addr2,
-                               unsigned long size, unsigned long n)
-{
-       if (n >= size)
-               return size;
-
-       if (small_const_nbits(size)) {
-               unsigned long val =  *addr1 & (~*addr2) & GENMASK(size - 1, 0);
-
-               return val ? fns(val, n) : size;
-       }
-
-       return __find_nth_andnot_bit(addr1, addr2, size, n);
-}
-
 /**
  * find_nth_and_andnot_bit - find N'th set bit in 2 memory regions,
  *                          excluding those set in 3rd region