sched: __sched_setscheduler: Read the RLIMIT_RTPRIO value lockless
__sched_setscheduler() takes lock_task_sighand() to access task->signal.
This is not needed since ea6d290c
, ->signal can't go away.
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <20100610230944.GA25903@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
b6b1229440
commit
a44702e885
@ -4600,12 +4600,8 @@ recheck:
|
|||||||
*/
|
*/
|
||||||
if (user && !capable(CAP_SYS_NICE)) {
|
if (user && !capable(CAP_SYS_NICE)) {
|
||||||
if (rt_policy(policy)) {
|
if (rt_policy(policy)) {
|
||||||
unsigned long rlim_rtprio;
|
unsigned long rlim_rtprio =
|
||||||
|
task_rlimit(p, RLIMIT_RTPRIO);
|
||||||
if (!lock_task_sighand(p, &flags))
|
|
||||||
return -ESRCH;
|
|
||||||
rlim_rtprio = task_rlimit(p, RLIMIT_RTPRIO);
|
|
||||||
unlock_task_sighand(p, &flags);
|
|
||||||
|
|
||||||
/* can't set/change the rt policy */
|
/* can't set/change the rt policy */
|
||||||
if (policy != p->policy && !rlim_rtprio)
|
if (policy != p->policy && !rlim_rtprio)
|
||||||
|
Loading…
Reference in New Issue
Block a user