summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_proc.c
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>2002-07-14 03:43:33 +0000
committerjulian <julian@FreeBSD.org>2002-07-14 03:43:33 +0000
commitd84464f213f9ba21a322886ecef90d13e9d43b74 (patch)
treeaafccf41b7ab2599852d32b259154da2899a2107 /sys/kern/kern_proc.c
parent8dcca6c13311debeaa8c8fd0fee178622bc65cd9 (diff)
downloadFreeBSD-src-d84464f213f9ba21a322886ecef90d13e9d43b74.zip
FreeBSD-src-d84464f213f9ba21a322886ecef90d13e9d43b74.tar.gz
Thinking about it I came to the conclusion that the KSE states were incorrectly
formulated. The correct states should be: IDLE: On the idle KSE list for that KSEG RUNQ: Linked onto the system run queue. THREAD: Attached to a thread and slaved to whatever state the thread is in. This means that most places where we were adjusting kse state can go away as it is just moving around because the thread is.. The only places we need to adjust the KSE state is in transition to and from the idle and run queues. Reviewed by: jhb@freebsd.org
Diffstat (limited to 'sys/kern/kern_proc.c')
-rw-r--r--sys/kern/kern_proc.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c
index 44bf2ce..3547196 100644
--- a/sys/kern/kern_proc.c
+++ b/sys/kern/kern_proc.c
@@ -212,10 +212,8 @@ kse_link(struct kse *ke, struct ksegrp *kg)
{
struct proc *p = kg->kg_proc;
-KASSERT((ke->ke_state != KES_ONRUNQ), ("linking suspect kse on run queue"));
TAILQ_INSERT_HEAD(&kg->kg_kseq, ke, ke_kglist);
kg->kg_kses++;
-KASSERT((ke->ke_state != KES_IDLE), ("already on idle queue"));
ke->ke_state = KES_IDLE;
TAILQ_INSERT_HEAD(&kg->kg_iq, ke, ke_kgrlist);
kg->kg_idle_kses++;
OpenPOWER on IntegriCloud