summaryrefslogtreecommitdiffstats
path: root/sys/kern/sched_ule.c
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2008-01-05 04:47:31 +0000
committerjeff <jeff@FreeBSD.org>2008-01-05 04:47:31 +0000
commitebfbe60329d37a8bb2ebde0c4ea506e5b2655e85 (patch)
tree3651a75aa17b47c738073df4c226dc71da45ba97 /sys/kern/sched_ule.c
parent11437638137f8fc4674f367757a6efdb148e5967 (diff)
downloadFreeBSD-src-ebfbe60329d37a8bb2ebde0c4ea506e5b2655e85.zip
FreeBSD-src-ebfbe60329d37a8bb2ebde0c4ea506e5b2655e85.tar.gz
- Restore timeslicing code for all bit SCHED_FIFO priority classes.
Reported by: Peter Jeremy <peterjeremy@optushome.com.au>
Diffstat (limited to 'sys/kern/sched_ule.c')
-rw-r--r--sys/kern/sched_ule.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/sys/kern/sched_ule.c b/sys/kern/sched_ule.c
index 2bc0f3a..074e85b 100644
--- a/sys/kern/sched_ule.c
+++ b/sys/kern/sched_ule.c
@@ -2186,17 +2186,16 @@ sched_clock(struct thread *td)
tdq->tdq_ridx = tdq->tdq_idx;
}
ts = td->td_sched;
- /*
- * We only do slicing code for TIMESHARE threads.
- */
- if (td->td_pri_class != PRI_TIMESHARE)
+ if (td->td_pri_class & PRI_FIFO_BIT)
return;
- /*
- * We used a tick; charge it to the thread so that we can compute our
- * interactivity.
- */
- td->td_sched->ts_runtime += tickincr;
- sched_interact_update(td);
+ if (td->td_pri_class == PRI_TIMESHARE) {
+ /*
+ * We used a tick; charge it to the thread so
+ * that we can compute our interactivity.
+ */
+ td->td_sched->ts_runtime += tickincr;
+ sched_interact_update(td);
+ }
/*
* We used up one time slice.
*/
OpenPOWER on IntegriCloud