summaryrefslogtreecommitdiffstats
path: root/sys/kern/sched_ule.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/sched_ule.c')
-rw-r--r--sys/kern/sched_ule.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/sys/kern/sched_ule.c b/sys/kern/sched_ule.c
index 1f6a4d0..71646b6 100644
--- a/sys/kern/sched_ule.c
+++ b/sys/kern/sched_ule.c
@@ -1011,11 +1011,11 @@ sched_exit_thread(struct thread *td, struct thread *child)
}
void
-sched_clock(struct kse *ke)
+sched_clock(struct thread *td)
{
struct kseq *kseq;
struct ksegrp *kg;
- struct thread *td;
+ struct kse *ke;
#if 0
struct kse *nke;
#endif
@@ -1036,7 +1036,7 @@ sched_clock(struct kse *ke)
tickincr = 1;
}
- td = ke->ke_thread;
+ ke = td->td_kse;
kg = ke->ke_ksegrp;
mtx_assert(&sched_lock, MA_OWNED);
@@ -1225,11 +1225,14 @@ retry:
}
void
-sched_add(struct kse *ke)
+sched_add(struct thread *td)
{
struct kseq *kseq;
struct ksegrp *kg;
+ struct kse *ke;
+ ke = td->td_kse;
+ kg = td->td_ksegrp;
mtx_assert(&sched_lock, MA_OWNED);
KASSERT((ke->ke_thread != NULL), ("sched_add: No thread on KSE"));
KASSERT((ke->ke_thread->td_kse != NULL),
@@ -1242,7 +1245,6 @@ sched_add(struct kse *ke)
KASSERT(ke->ke_runq == NULL,
("sched_add: KSE %p is still assigned to a run queue", ke));
- kg = ke->ke_ksegrp;
switch (PRI_BASE(kg->kg_pri_class)) {
case PRI_ITHD:
@@ -1283,9 +1285,12 @@ sched_add(struct kse *ke)
}
void
-sched_rem(struct kse *ke)
+sched_rem(struct thread *td)
{
struct kseq *kseq;
+ struct kse *ke;
+
+ ke = td->td_kse;
mtx_assert(&sched_lock, MA_OWNED);
KASSERT((ke->ke_state == KES_ONRUNQ), ("KSE not on run queue"));
@@ -1298,11 +1303,13 @@ sched_rem(struct kse *ke)
}
fixpt_t
-sched_pctcpu(struct kse *ke)
+sched_pctcpu(struct thread *td)
{
fixpt_t pctcpu;
+ struct kse *ke;
pctcpu = 0;
+ ke = td->td_kse;
mtx_lock_spin(&sched_lock);
if (ke->ke_ticks) {
OpenPOWER on IntegriCloud