Commit | Line | Data |
---|---|---|
6e0534f2 GH |
1 | #ifndef _LINUX_CPUPRI_H |
2 | #define _LINUX_CPUPRI_H | |
3 | ||
4 | #include <linux/sched.h> | |
5 | ||
6 | #define CPUPRI_NR_PRIORITIES 2+MAX_RT_PRIO | |
7 | #define CPUPRI_NR_PRI_WORDS CPUPRI_NR_PRIORITIES/BITS_PER_LONG | |
8 | ||
9 | #define CPUPRI_INVALID -1 | |
10 | #define CPUPRI_IDLE 0 | |
11 | #define CPUPRI_NORMAL 1 | |
12 | /* values 2-101 are RT priorities 0-99 */ | |
13 | ||
14 | struct cpupri_vec { | |
15 | spinlock_t lock; | |
16 | int count; | |
17 | cpumask_t mask; | |
18 | }; | |
19 | ||
20 | struct cpupri { | |
21 | struct cpupri_vec pri_to_cpu[CPUPRI_NR_PRIORITIES]; | |
22 | long pri_active[CPUPRI_NR_PRI_WORDS]; | |
23 | int cpu_to_pri[NR_CPUS]; | |
24 | }; | |
25 | ||
26 | #ifdef CONFIG_SMP | |
27 | int cpupri_find(struct cpupri *cp, | |
28 | struct task_struct *p, cpumask_t *lowest_mask); | |
29 | void cpupri_set(struct cpupri *cp, int cpu, int pri); | |
30 | void cpupri_init(struct cpupri *cp); | |
31 | #else | |
32 | #define cpupri_set(cp, cpu, pri) do { } while (0) | |
33 | #define cpupri_init() do { } while (0) | |
34 | #endif | |
35 | ||
36 | #endif /* _LINUX_CPUPRI_H */ |