diff options
author | tanimura <tanimura@FreeBSD.org> | 2002-05-03 07:46:59 +0000 |
---|---|---|
committer | tanimura <tanimura@FreeBSD.org> | 2002-05-03 07:46:59 +0000 |
commit | 101b936bbcbf5df4649ff52f53a4e12fc2b27ef1 (patch) | |
tree | 20dc7a64fd327af0d4419435627cd614abc25bcb /sys/kern/kern_proc.c | |
parent | ba261cf2ed3da3e5456f79198fab03cb613643a8 (diff) | |
download | FreeBSD-src-101b936bbcbf5df4649ff52f53a4e12fc2b27ef1.zip FreeBSD-src-101b936bbcbf5df4649ff52f53a4e12fc2b27ef1.tar.gz |
As malloc(9) and free(9) are now Giant-free, remove the Giant lock
across malloc(9) and free(9) of a pgrp or a session.
Diffstat (limited to 'sys/kern/kern_proc.c')
-rw-r--r-- | sys/kern/kern_proc.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index d68c02e..2dde108 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -493,16 +493,12 @@ pgdelete(pgrp) savesess->s_count--; SESS_UNLOCK(savesess); PGRP_UNLOCK(pgrp); - mtx_destroy(&pgrp->pg_mtx); - sx_xunlock(&proctree_lock); /* XXX Until free(9) becomes Giant-free */ - mtx_lock(&Giant); - sx_xlock(&proctree_lock); if (savesess->s_count == 0) { mtx_destroy(&savesess->s_mtx); FREE(pgrp->pg_session, M_SESSION); } + mtx_destroy(&pgrp->pg_mtx); FREE(pgrp, M_PGRP); - mtx_unlock(&Giant); } /* |