X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=kernel%2Fsched.c;h=32b195fcca4186cb04aebb0b6f3ab638803abf45;hb=000af042c9fbf7f86f68f59be2836111d3331aba;hp=eeaa858441a642ac78620780e999eb2a9ba81250;hpb=98d6e1b4ea4483baed5a3606de26441a96e86948;p=linux-2.6.git diff --git a/kernel/sched.c b/kernel/sched.c index eeaa85844..32b195fcc 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -50,9 +50,10 @@ #include #include #include -#include +#include #include + #include #include #include @@ -2718,7 +2719,7 @@ void scheduler_tick(void) * RR tasks need a special form of timeslice management. * FIFO tasks have no timeslices. */ - if ((p->policy == SCHED_RR) && !--p->time_slice) { + if ((p->policy == SCHED_RR) && vx_need_resched(p)) { p->time_slice = task_timeslice(p); p->first_time_slice = 0; set_tsk_need_resched(p);