diff options
author | jake <jake@FreeBSD.org> | 2000-11-17 18:09:18 +0000 |
---|---|---|
committer | jake <jake@FreeBSD.org> | 2000-11-17 18:09:18 +0000 |
commit | 3a97b3e213f232a4b939a68fed0d93230f4b2ddb (patch) | |
tree | cac806cc5bcd1867db8a01f555cc5cd41f13cfba /sys/kern/kern_subr.c | |
parent | 4392ed2ce56049571282c170b18fa4632409955e (diff) | |
download | FreeBSD-src-3a97b3e213f232a4b939a68fed0d93230f4b2ddb.zip FreeBSD-src-3a97b3e213f232a4b939a68fed0d93230f4b2ddb.tar.gz |
- Split the run queue and sleep queue linkage, so that a process
may block on a mutex while on the sleep queue without corrupting
it.
- Move dropping of Giant to after the acquire of sched_lock.
Tested by: John Hay <jhay@icomtek.csir.co.za>
jhb
Diffstat (limited to 'sys/kern/kern_subr.c')
-rw-r--r-- | sys/kern/kern_subr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/kern_subr.c b/sys/kern/kern_subr.c index 429f34b..c379f79 100644 --- a/sys/kern/kern_subr.c +++ b/sys/kern/kern_subr.c @@ -377,8 +377,8 @@ uio_yield() p = curproc; s = splhigh(); - DROP_GIANT_NOSWITCH(); mtx_enter(&sched_lock, MTX_SPIN); + DROP_GIANT_NOSWITCH(); p->p_priority = p->p_usrpri; setrunqueue(p); p->p_stats->p_ru.ru_nivcsw++; |