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!
This commit is contained in:
parent
52702e98d2
commit
df623e3c2f
@ -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;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user