1 /* SPDX-License-Identifier: GPL-2.0 */ 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_SCHED_DEADLINE_H << 3 #define _LINUX_SCHED_DEADLINE_H << 4 2 5 /* 3 /* 6 * SCHED_DEADLINE tasks has negative prioritie 4 * SCHED_DEADLINE tasks has negative priorities, reflecting 7 * the fact that any of them has higher prio t 5 * the fact that any of them has higher prio than RT and 8 * NORMAL/BATCH tasks. 6 * NORMAL/BATCH tasks. 9 */ 7 */ 10 8 11 #include <linux/sched.h> 9 #include <linux/sched.h> 12 10 13 static inline bool dl_prio(int prio) !! 11 #define MAX_DL_PRIO 0 >> 12 >> 13 static inline int dl_prio(int prio) 14 { 14 { 15 return unlikely(prio < MAX_DL_PRIO); !! 15 if (unlikely(prio < MAX_DL_PRIO)) >> 16 return 1; >> 17 return 0; 16 } 18 } 17 19 18 /* !! 20 static inline int dl_task(struct task_struct *p) 19 * Returns true if a task has a priority that << 20 * tasks will return true. Use dl_policy() to << 21 */ << 22 static inline bool dl_task(struct task_struct << 23 { 21 { 24 return dl_prio(p->prio); 22 return dl_prio(p->prio); 25 } 23 } 26 24 27 static inline bool dl_time_before(u64 a, u64 b 25 static inline bool dl_time_before(u64 a, u64 b) 28 { 26 { 29 return (s64)(a - b) < 0; 27 return (s64)(a - b) < 0; 30 } 28 } 31 29 32 #ifdef CONFIG_SMP 30 #ifdef CONFIG_SMP 33 31 34 struct root_domain; 32 struct root_domain; 35 extern void dl_add_task_root_domain(struct tas 33 extern void dl_add_task_root_domain(struct task_struct *p); 36 extern void dl_clear_root_domain(struct root_d 34 extern void dl_clear_root_domain(struct root_domain *rd); 37 35 38 #endif /* CONFIG_SMP */ 36 #endif /* CONFIG_SMP */ 39 << 40 #endif /* _LINUX_SCHED_DEADLINE_H */ << 41 37
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.