introduce is_rt_policy() helper
PATCH 3/4 introduce is_rt_policy() helper
Imho, makes the code a bit easier to read.
Signed-off-by Oleg Nesterov <[email protected]>
include/linux/sched.h renamed from include/linux/sched.h~3_is_rt +2 -2
@@ -504,8 +504,8 @@ struct signal_struct {#define rt_prio (prio) unlikely((prio) < MAX_RT_PRIO)#define rt_task (p) rt_prio((p)->prio)#define batch_task (p) (unlikely((p)->policy == SCHED_BATCH)) -#define has_rt_policy (p) \ - unlikely((p)->policy != SCHED_NORMAL && (p)->policy != SCHED_BATCH) +#define is_rt_policy (p) ((p) != SCHED_NORMAL && (p) != SCHED_BATCH) +#define has_rt_policy (p) unlikely(is_rt_policy((p)->policy))/* * Some day this will be a full-fledged user tracking system..
kernel/sched.c renamed from kernel/sched.c~3_is_rt +2 -3
@@ -4072,8 +4072,7 @@ recheck: (p->mm && param->sched_priority >MAX_USER_RT_PRIO -1 ) || (!p->mm && param->sched_priority > MAX_RT_PRIO-1)) return -EINVAL; -if ((policy ==SCHED_NORMAL || policy ==SCHED_BATCH ) - != (param->sched_priority ==0 )) +if (is_rt_policy (policy) != (param->sched_priority !=0 ))return -EINVAL ;/*
@@ -4097,7 +4096,7 @@ recheck: !rlim_rtprio)return -EPERM ;/* can't increase priority */ -if ((policy !=SCHED_NORMAL && policy !=SCHED_BATCH ) && +if (is_rt_policy (policy) && param->sched_priority > p->rt_priority && param->sched_priority > rlim_rtprio)return -EPERM ;