1 #ifndef __LINUX_CPUMASK_H
2 #define __LINUX_CPUMASK_H
4 #include <linux/threads.h>
5 #include <linux/bitmap.h>
6 #include <asm/cpumask.h>
11 extern cpumask_t cpu_online_map;
12 extern cpumask_t cpu_possible_map;
14 #define num_online_cpus() cpus_weight(cpu_online_map)
15 #define num_possible_cpus() cpus_weight(cpu_possible_map)
16 #define cpu_online(cpu) cpu_isset(cpu, cpu_online_map)
17 #define cpu_possible(cpu) cpu_isset(cpu, cpu_possible_map)
19 #define for_each_cpu_mask(cpu, mask) \
20 for (cpu = first_cpu_const(mk_cpumask_const(mask)); \
22 cpu = next_cpu_const(cpu, mk_cpumask_const(mask)))
24 #define for_each_cpu(cpu) for_each_cpu_mask(cpu, cpu_possible_map)
25 #define for_each_online_cpu(cpu) for_each_cpu_mask(cpu, cpu_online_map)
27 #define cpu_online_map cpumask_of_cpu(0)
28 #define cpu_possible_map cpumask_of_cpu(0)
29 #define num_online_cpus() 1
30 #define num_possible_cpus() 1
31 #define cpu_online(cpu) ({ BUG_ON((cpu) != 0); 1; })
32 #define cpu_possible(cpu) ({ BUG_ON((cpu) != 0); 1; })
34 #define for_each_cpu(cpu) for (cpu = 0; cpu < 1; cpu++)
35 #define for_each_online_cpu(cpu) for (cpu = 0; cpu < 1; cpu++)
38 #define cpumask_scnprintf(buf, buflen, map) \
39 bitmap_scnprintf(buf, buflen, cpus_addr(map), NR_CPUS)
41 #define cpumask_parse(buf, buflen, map) \
42 bitmap_parse(buf, buflen, cpus_addr(map), NR_CPUS)
44 #endif /* __LINUX_CPUMASK_H */