From df623e3c2fb3e607149dc776ace44832385aa4e3 Mon Sep 17 00:00:00 2001 From: Robert Watson Date: Tue, 6 Jul 2004 05:57:29 +0000 Subject: [PATCH] Temporarily disable preemption in SCHED_ULE due to reported panics and hangs due to recent preemption changes. This change appears to remove the panic that I was running into, but at the cost of increasing ithread scheduling latency, and as such is a temporary band-aid until jhb has a chance to resolve the ule<->preemption interaction that is the source of the problem. If it doesn't fix the problem for others-- sorry! --- sys/kern/sched_ule.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/kern/sched_ule.c b/sys/kern/sched_ule.c index 7eb82186fc3f..b37ab0cb589f 100644 --- a/sys/kern/sched_ule.c +++ b/sys/kern/sched_ule.c @@ -1623,6 +1623,7 @@ sched_add(struct thread *td) if (td->td_priority < curthread->td_priority) curthread->td_flags |= TDF_NEEDRESCHED; +#if 0 #ifdef SMP /* * Only try to preempt if the thread is unpinned or pinned to the @@ -1632,6 +1633,7 @@ sched_add(struct thread *td) #endif if (maybe_preempt(td)) return; +#endif ke->ke_ksegrp->kg_runq_kses++; ke->ke_state = KES_ONRUNQ;