diff options
author | Scott Long <scottl@FreeBSD.org> | 2004-07-22 14:32:48 +0000 |
---|---|---|
committer | Scott Long <scottl@FreeBSD.org> | 2004-07-22 14:32:48 +0000 |
commit | 9493183e7732319b998b8c7b2061883fb9dc4f85 (patch) | |
tree | a525734e13d1b68ee4fbf4a340b7684a8fa2f4ed /sys | |
parent | 6b61c155e62f929b7ebbeb6babe6f1e774c23f5c (diff) | |
download | src-9493183e7732319b998b8c7b2061883fb9dc4f85.tar.gz src-9493183e7732319b998b8c7b2061883fb9dc4f85.zip |
Disable the PREEMPTION-enabled code in critical_exit() that encourages
switching to a different thread. This is just a hack to try to improve
stability some more, but likely points closer to the real culprit.
Notes
Notes:
svn path=/head/; revision=132543
Diffstat (limited to 'sys')
-rw-r--r-- | sys/kern/kern_switch.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/kern_switch.c b/sys/kern/kern_switch.c index 5183a355995b..4822c5edb994 100644 --- a/sys/kern/kern_switch.c +++ b/sys/kern/kern_switch.c @@ -450,6 +450,7 @@ critical_exit(void) KASSERT(td->td_critnest != 0, ("critical_exit: td_critnest == 0")); if (td->td_critnest == 1) { +#if 0 #ifdef PREEMPTION mtx_assert(&sched_lock, MA_NOTOWNED); if (td->td_pflags & TDP_OWEPREEMPT) { @@ -458,6 +459,7 @@ critical_exit(void) mtx_unlock_spin(&sched_lock); } #endif +#endif td->td_critnest = 0; cpu_critical_exit(); } else { |