- Don't try to unlock Giant if single threading fails since we don't have

it locked.
- Unlock Giant before calling exit1() since exit1() does not require Giant.
This commit is contained in:
jhb 2004-09-23 21:01:50 +00:00
parent 138096672e
commit 1f2758a712

View File

@ -257,7 +257,6 @@ kern_execve(td, fname, argv, envv, mac_p)
if (p->p_flag & P_HADTHREADS) {
if (thread_single(SINGLE_EXIT)) {
PROC_UNLOCK(p);
mtx_unlock(&Giant);
return (ERESTART); /* Try again later. */
}
/*
@ -723,6 +722,7 @@ kern_execve(td, fname, argv, envv, mac_p)
if (interplabel != NULL)
mac_vnode_label_free(interplabel);
#endif
mtx_unlock(&Giant);
exit1(td, W_EXITCODE(0, SIGABRT));
/* NOT REACHED */
error = 0;