On Mon, Jun 02, 2014 at 02:13:19AM +0000, Linux Kernel wrote:
 
 >     sched: Disallow sched_attr::sched_policy < 0
 >     
 >     The scheduler uses policy=-1 to preserve the current policy state to
 >     implement sys_sched_setparam(), this got exposed to userspace by
 >     accident through sys_sched_setattr(), cure this.
 >     
 > ---
 >  kernel/sched/core.c |    3 +++
 >  1 files changed, 3 insertions(+), 0 deletions(-)
 > 
 > diff --git a/kernel/sched/core.c b/kernel/sched/core.c
 > index f2205f0..cdefcf7 100644
 > --- a/kernel/sched/core.c
 > +++ b/kernel/sched/core.c
 > @@ -3662,6 +3662,9 @@ SYSCALL_DEFINE3(sched_setattr, pid_t, pid, struct 
 > sched_attr __user *, uattr,
 >      if (retval)
 >              return retval;
 >  
 > +    if (attr.sched_policy < 0)
 > +            return -EINVAL;
 > +
 >      rcu_read_lock();
 >      retval = -ESRCH;
 >      p = find_process_by_pid(pid);
 
Todays coverity run picked up..

3687
>>>     CID 1219934:  Unsigned compared against 0  (NO_EFFECT)
>>>     This less-than-zero comparison of an unsigned value is never true. 
>>> "attr.sched_policy < 0U".
3688            if (attr.sched_policy < 0)
3689                    return -EINVAL;


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to