diff --git a/[refs] b/[refs] index 98cb12cfa0cb..3759f0c24929 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5941de8eadc287f3f47b87ce9888734ee07d210b +refs/heads/master: 725aad24c3ba96a7c06448c14c265a466cdbd663 diff --git a/trunk/kernel/sched.c b/trunk/kernel/sched.c index 21f7da94662e..04160d277e7a 100644 --- a/trunk/kernel/sched.c +++ b/trunk/kernel/sched.c @@ -5004,19 +5004,21 @@ static int __sched_setscheduler(struct task_struct *p, int policy, return -EPERM; } + if (user) { #ifdef CONFIG_RT_GROUP_SCHED - /* - * Do not allow realtime tasks into groups that have no runtime - * assigned. - */ - if (user - && rt_policy(policy) && task_group(p)->rt_bandwidth.rt_runtime == 0) - return -EPERM; + /* + * Do not allow realtime tasks into groups that have no runtime + * assigned. + */ + if (rt_policy(policy) && task_group(p)->rt_bandwidth.rt_runtime == 0) + return -EPERM; #endif - retval = security_task_setscheduler(p, policy, param); - if (retval) - return retval; + retval = security_task_setscheduler(p, policy, param); + if (retval) + return retval; + } + /* * make sure no PI-waiters arrive (or leave) while we are * changing the priority of the task: