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);
- }
+ #define assign_cpu(cpu, mask, val) \
+ assign_bit(cpumask_check(cpu), cpumask_bits(mask), (val))
- 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 set_cpu_possible(cpu, possible) assign_cpu((cpu), &__cpu_possible_mask, (possible))
++#define set_cpu_enabled(cpu, enabled) assign_cpu((cpu), &__cpu_possible_mask, (enabled))
+ #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);