Subject: linux-next: manual merge of the bitmap tree with the arm64 tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 1 Jul 2024 17:50:51 +1000

Hi all,

Today's linux-next merge of the bitmap tree got a conflict in:

  include/linux/cpumask.h

between commit:

  4e1a7df45480 ("cpumask: Add enabled cpumask for present CPUs that can be brought online")

from the arm64 tree and commit:

  5c563ee90a22 ("cpumask: introduce assign_cpu() macro")

from the bitmap tree.

I fixed it up (I just did the obvious - see below) and can carry the
fix as necessary. This is now fixed as far as linux-next is concerned,
but any non trivial conflicts should be mentioned to your upstream
maintainer when your tree is submitted for merging.  You may also want
to consider cooperating with the maintainer of the conflicting tree to
minimise any particularly complex conflicts.

-- 
Cheers,
Stephen Rothwell

diff --cc include/linux/cpumask.h
index 099e8b32dd68,18410acdbc9e..000000000000
--- a/include/linux/cpumask.h
+++ b/include/linux/cpumask.h
@@@ -1033,32 -1083,13 +1033,22 @@@ void init_cpu_present(const struct cpum
  void init_cpu_possible(const struct cpumask *src);
  void init_cpu_online(const struct cpumask *src);
  
- static inline void
- set_cpu_possible(unsigned int cpu, bool possible)
- {
- 	if (possible)
- 		cpumask_set_cpu(cpu, &__cpu_possible_mask);
- 	else
- 		cpumask_clear_cpu(cpu, &__cpu_possible_mask);
- }
- 
 +static inline void
 +set_cpu_enabled(unsigned int cpu, bool can_be_onlined)
 +{
 +	if (can_be_onlined)
 +		cpumask_set_cpu(cpu, &__cpu_enabled_mask);
 +	else
 +		cpumask_clear_cpu(cpu, &__cpu_enabled_mask);
 +}
 +
- static inline void
- set_cpu_present(unsigned int cpu, bool present)
- {
- 	if (present)
- 		cpumask_set_cpu(cpu, &__cpu_present_mask);
- 	else
- 		cpumask_clear_cpu(cpu, &__cpu_present_mask);
- }
+ #define assign_cpu(cpu, mask, val)	\
+ 	assign_bit(cpumask_check(cpu), cpumask_bits(mask), (val))
+ 
+ #define set_cpu_possible(cpu, possible)	assign_cpu((cpu), &__cpu_possible_mask, (possible))
+ #define set_cpu_present(cpu, present)	assign_cpu((cpu), &__cpu_present_mask, (present))
+ #define set_cpu_active(cpu, active)	assign_cpu((cpu), &__cpu_active_mask, (active))
+ #define set_cpu_dying(cpu, dying)	assign_cpu((cpu), &__cpu_dying_mask, (dying))
  
  void set_cpu_online(unsigned int cpu, bool online);