diff options
author | jhb <jhb@FreeBSD.org> | 2001-07-03 05:09:48 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2001-07-03 05:09:48 +0000 |
commit | f43dc7e223b904d972a08ea114e0743d001e5a63 (patch) | |
tree | 726019257f0c89e974c9b19bb1489a864e52a618 /sys/amd64 | |
parent | 54186427e0e1a77689aed1524c4470172b069845 (diff) | |
download | FreeBSD-src-f43dc7e223b904d972a08ea114e0743d001e5a63.zip FreeBSD-src-f43dc7e223b904d972a08ea114e0743d001e5a63.tar.gz |
Allow Giant to be recursed when a process terminates.
Diffstat (limited to 'sys/amd64')
-rw-r--r-- | sys/amd64/amd64/vm_machdep.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/amd64/amd64/vm_machdep.c b/sys/amd64/amd64/vm_machdep.c index 40ae8cd..e26d211 100644 --- a/sys/amd64/amd64/vm_machdep.c +++ b/sys/amd64/amd64/vm_machdep.c @@ -269,8 +269,8 @@ cpu_exit(p) } PROC_LOCK(p); mtx_lock_spin(&sched_lock); - mtx_unlock_flags(&Giant, MTX_NOSWITCH); - mtx_assert(&Giant, MA_NOTOWNED); + while (mtx_owned(&Giant)) + mtx_unlock_flags(&Giant, MTX_NOSWITCH); /* * We have to wait until after releasing all locks before |