summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2008-03-23 06:52:01 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2008-03-23 06:52:01 +0000
commitc4f659edca0582b143f229e02886866e6fb7421c (patch)
treed39d0334c8020e5a213bdcf6cb04e18173217788
parent119fb3173c032754337bae414d5a31dc8988eb48 (diff)
Notes
-rw-r--r--sys/kern/kern_fork.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c
index 711fba2b6114..e31c37aa3aaa 100644
--- a/sys/kern/kern_fork.c
+++ b/sys/kern/kern_fork.c
@@ -250,6 +250,7 @@ norfproc_fail:
return (error);
}
+ vm2 = NULL;
/* Allocate new proc. */
newproc = uma_zalloc(proc_zone, M_WAITOK);
if (TAILQ_EMPTY(&newproc->p_threads)) {
@@ -276,8 +277,7 @@ norfproc_fail:
error = ENOMEM;
goto fail1;
}
- } else
- vm2 = NULL;
+ }
#ifdef MAC
mac_init_proc(newproc);
#endif
@@ -734,6 +734,8 @@ fail:
mac_destroy_proc(newproc);
#endif
fail1:
+ if (vm2 != NULL)
+ vmspace_free(vm2);
uma_zfree(proc_zone, newproc);
pause("fork", hz / 2);
return (error);