2008-03-07 01:39:13

by Miao Xie

[permalink] [raw]
Subject: [PATCH] sched: fix the wrong time slice value for SCHED_FIFO tasks

Function sys_sched_rr_get_interval returns wrong time slice value for
SCHED_FIFO tasks. The time slice for SCHED_FIFO tasks should be 0.

Signed-off-by: Miao Xie <[email protected]>

---
kernel/sched.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/kernel/sched.c b/kernel/sched.c
index dcd553c..870044d 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -5100,7 +5100,7 @@ long sys_sched_rr_get_interval(pid_t pid, struct timespec __user *interval)
time_slice = 0;
if (p->policy == SCHED_RR) {
time_slice = DEF_TIMESLICE;
- } else {
+ } else if (p->policy != SCHED_FIFO) {
struct sched_entity *se = &p->se;
unsigned long flags;
struct rq *rq;
--
1.5.4.rc3


2008-03-07 10:01:23

by Ingo Molnar

[permalink] [raw]
Subject: Re: [PATCH] sched: fix the wrong time slice value for SCHED_FIFO tasks


* Miao Xie <[email protected]> wrote:

> Function sys_sched_rr_get_interval returns wrong time slice value for
> SCHED_FIFO tasks. The time slice for SCHED_FIFO tasks should be 0.
>
> Signed-off-by: Miao Xie <[email protected]>

good catch - applied.

Ingo