1234567891011121314151617181920212223242526272829303132333435363738 |
- #ifndef _LINUX_CPUPRI_H
- #define _LINUX_CPUPRI_H
- #include <linux/sched.h>
- #define CPUPRI_NR_PRIORITIES (MAX_RT_PRIO + 2)
- #define CPUPRI_NR_PRI_WORDS BITS_TO_LONGS(CPUPRI_NR_PRIORITIES)
- #define CPUPRI_INVALID -1
- #define CPUPRI_IDLE 0
- #define CPUPRI_NORMAL 1
- /* values 2-101 are RT priorities 0-99 */
- struct cpupri_vec {
- raw_spinlock_t lock;
- int count;
- cpumask_var_t mask;
- };
- struct cpupri {
- struct cpupri_vec pri_to_cpu[CPUPRI_NR_PRIORITIES];
- long pri_active[CPUPRI_NR_PRI_WORDS];
- int cpu_to_pri[NR_CPUS];
- };
- #ifdef CONFIG_SMP
- int cpupri_find(struct cpupri *cp,
- struct task_struct *p, struct cpumask *lowest_mask);
- void cpupri_set(struct cpupri *cp, int cpu, int pri);
- int cpupri_init(struct cpupri *cp);
- void cpupri_cleanup(struct cpupri *cp);
- #else
- #define cpupri_set(cp, cpu, pri) do { } while (0)
- #define cpupri_init() do { } while (0)
- #endif
- #endif /* _LINUX_CPUPRI_H */
|