Re: [PATCH v4 2/2] sched/rt, dl: Convert functions to return bool

From: Metin Kaya
Date: Mon Jun 03 2024 - 03:34:09 EST


On 01/06/2024 10:33 pm, Qais Yousef wrote:
{rt, realtime, dl}_{task, prio}() functions return value is actually
a bool. Convert their return type to reflect that.

Suggested-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
Signed-off-by: Qais Yousef <qyousef@xxxxxxxxxxx>
---
include/linux/sched/deadline.h | 8 ++++----
include/linux/sched/rt.h | 16 ++++++++--------
2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/include/linux/sched/deadline.h b/include/linux/sched/deadline.h
index 5cb88b748ad6..f2053f46f1d5 100644
--- a/include/linux/sched/deadline.h
+++ b/include/linux/sched/deadline.h
@@ -10,18 +10,18 @@
#include <linux/sched.h>
-static inline int dl_prio(int prio)
+static inline bool dl_prio(int prio)
{
if (unlikely(prio < MAX_DL_PRIO))
- return 1;
- return 0;
+ return true;
+ return false;

Nit: `return unlikely(prio < MAX_DL_PRIO)` would be simpler.
The same can be applied to rt_prio() and realtime_prio(). This would make {dl, rt, realtime}_task() single-liner. Maybe further simplification can be done.

}
/*
* Returns true if a task has a priority that belongs to DL class. PI-boosted
* tasks will return true. Use dl_policy() to ignore PI-boosted tasks.
*/
-static inline int dl_task(struct task_struct *p)
+static inline bool dl_task(struct task_struct *p)
{
return dl_prio(p->prio);
}
diff --git a/include/linux/sched/rt.h b/include/linux/sched/rt.h
index a055dd68a77c..efbdd2e57765 100644
--- a/include/linux/sched/rt.h
+++ b/include/linux/sched/rt.h
@@ -6,25 +6,25 @@
struct task_struct;
-static inline int rt_prio(int prio)
+static inline bool rt_prio(int prio)
{
if (unlikely(prio < MAX_RT_PRIO && prio >= MAX_DL_PRIO))
- return 1;
- return 0;
+ return true;
+ return false;
}
-static inline int realtime_prio(int prio)
+static inline bool realtime_prio(int prio)
{
if (unlikely(prio < MAX_RT_PRIO))
- return 1;
- return 0;
+ return true;
+ return false;
}
/*
* Returns true if a task has a priority that belongs to RT class. PI-boosted
* tasks will return true. Use rt_policy() to ignore PI-boosted tasks.
*/
-static inline int rt_task(struct task_struct *p)
+static inline bool rt_task(struct task_struct *p)
{
return rt_prio(p->prio);
}
@@ -34,7 +34,7 @@ static inline int rt_task(struct task_struct *p)
* PI-boosted tasks will return true. Use realtime_task_policy() to ignore
* PI-boosted tasks.
*/
-static inline int realtime_task(struct task_struct *p)
+static inline bool realtime_task(struct task_struct *p)
{
return realtime_prio(p->prio);
}