summaryrefslogtreecommitdiff
path: root/sys/kern
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2000-11-27 18:48:13 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2000-11-27 18:48:13 +0000
commit91b7c97713abc6c566471ed775a2da81a319d96a (patch)
tree2a755640e8b431ff3e87f84949a60f0826caec5e /sys/kern
parent77a0943ded95b9e6438f7db70c4a28e4d93946d4 (diff)
Notes
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/kern_threads.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/kern_threads.c b/sys/kern/kern_threads.c
index e4f0f4e061d5..3e06abcb95d0 100644
--- a/sys/kern/kern_threads.c
+++ b/sys/kern/kern_threads.c
@@ -148,11 +148,13 @@ yield(struct proc *p, struct yield_args *uap) {
s = splhigh();
mtx_enter(&sched_lock, MTX_SPIN);
+ DROP_GIANT_NOSWITCH();
p->p_priority = MAXPRI;
setrunqueue(p);
p->p_stats->p_ru.ru_nvcsw++;
mi_switch();
mtx_exit(&sched_lock, MTX_SPIN);
+ PICKUP_GIANT();
splx(s);
return(0);