summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_glue.c
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>2002-09-06 07:00:37 +0000
committerjulian <julian@FreeBSD.org>2002-09-06 07:00:37 +0000
commit4446570abffaa8bb634aecab0e8b85c27033979b (patch)
tree01ff467a2fdb42c0b7b0624494e4a993030d572b /sys/vm/vm_glue.c
parent9680f220d4acd260a446574e496f176621c7a18e (diff)
downloadFreeBSD-src-4446570abffaa8bb634aecab0e8b85c27033979b.zip
FreeBSD-src-4446570abffaa8bb634aecab0e8b85c27033979b.tar.gz
Use UMA as a complex object allocator.
The process allocator now caches and hands out complete process structures *including substructures* . i.e. it get's the process structure with the first thread (and soon KSE) already allocated and attached, all in one hit. For the average non threaded program (non KSE that is) the allocated thread and its stack remain attached to the process, even when the process is unused and in the process cache. This saves having to allocate and attach it later, effectively bringing us (hopefully) close to the efficiency of pre-KSE systems where these were a single structure. Reviewed by: davidxu@freebsd.org, peter@freebsd.org
Diffstat (limited to 'sys/vm/vm_glue.c')
-rw-r--r--sys/vm/vm_glue.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c
index 24b27e3..8e3f5c6 100644
--- a/sys/vm/vm_glue.c
+++ b/sys/vm/vm_glue.c
@@ -430,14 +430,9 @@ void
vm_waitproc(p)
struct proc *p;
{
- struct thread *td;
GIANT_REQUIRED;
cpu_wait(p);
-/* XXXKSE by here there should not be any threads left! */
- FOREACH_THREAD_IN_PROC(p, td) {
- panic("vm_waitproc: Survivor thread!");
- }
vmspace_exitfree(p); /* and clean-out the vmspace */
}
OpenPOWER on IntegriCloud