freebsd-dev/sys/vm
Julian Elischer 1faf202ea9 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
2002-09-06 07:00:37 +00:00
..
default_pager.c Remove references to vm_zone.h and switch over to the new uma API. 2002-03-20 04:02:59 +00:00
device_pager.c o Lock accesses to the page queues. 2002-07-12 02:55:55 +00:00
phys_pager.c o Retire vm_page_zero_fill() and vm_page_zero_fill_area(). Ever since 2002-08-25 00:22:31 +00:00
pmap.h o Retire pmap_pageable(). It's an advisory routine that none 2002-08-25 04:20:05 +00:00
swap_pager.c Reduce the maximum KVA reserved for swap meta structures from 70 to 32 MB. 2002-08-31 21:15:29 +00:00
swap_pager.h Use `struct uma_zone *' instead of uma_zone_t, so that <sys/uma.h> isn't 2002-09-05 14:04:34 +00:00
uma_core.c Don't use "NULL" when "0" is really meant. 2002-08-21 23:39:52 +00:00
uma_dbg.c Remove unnecessary includes. 2002-07-05 05:16:19 +00:00
uma_dbg.h Hide a pointer to the malloc_type bucket at the end of the freed memory. If 2002-05-02 09:07:04 +00:00
uma_int.h Part 1 of KSE-III 2002-06-29 17:26:22 +00:00
uma.h Void functions cannot return values. 2002-07-18 15:53:11 +00:00
vm_contig.c o Extend the scope of the page queues lock in contigmalloc1(). 2002-08-04 07:07:34 +00:00
vm_extern.h o Merge vm_fault_wire() and vm_fault_user_wire() by adding a new parameter, 2002-07-24 19:47:56 +00:00
vm_fault.c o Retire pmap_pageable(). It's an advisory routine that none 2002-08-25 04:20:05 +00:00
vm_glue.c Use UMA as a complex object allocator. 2002-09-06 07:00:37 +00:00
vm_init.c Change hw.physmem and hw.usermem to unsigned long like they used to be 2002-08-30 04:04:37 +00:00
vm_kern.c o Retire vm_page_zero_fill() and vm_page_zero_fill_area(). Ever since 2002-08-25 00:22:31 +00:00
vm_kern.h o Make contigmalloc1() static. 2002-05-22 01:01:37 +00:00
vm_map.c o Use vm_object_lock() in place of Giant when manipulating a vm object 2002-08-24 17:52:08 +00:00
vm_map.h Change struct vmspace->vm_shm from void * to struct shmmap_state *, this 2002-07-22 16:22:27 +00:00
vm_meter.c Part 1 of KSE-III 2002-06-29 17:26:22 +00:00
vm_mmap.c - Hold a lock on the vnode acquired from the file table across the call to 2002-07-06 22:14:38 +00:00
vm_object.c o Use vm_object_lock() in place of directly locking Giant. 2002-08-24 18:44:52 +00:00
vm_object.h o Resurrect vm_object_lock() and vm_object_unlock() from revision 1.19. 2002-08-24 07:15:14 +00:00
vm_page.c o Synchronize updates to struct vm_page::cow with the page queues lock. 2002-09-02 04:04:12 +00:00
vm_page.h o Retire vm_page_zero_fill() and vm_page_zero_fill_area(). Ever since 2002-08-25 00:22:31 +00:00
vm_pageout.c o Lock page queue accesses by vm_page_activate(). 2002-08-10 23:53:59 +00:00
vm_pageout.h Remove __P. 2002-03-19 22:20:14 +00:00
vm_pageq.c o Remove dead and/or unused code. 2002-07-20 05:06:20 +00:00
vm_pager.c o Remove some long dead code: from revision 1.41 of vm/vm_pager.c 2002-07-01 02:38:05 +00:00
vm_pager.h o Remove some long dead code: from revision 1.41 of vm/vm_pager.c 2002-07-01 02:38:05 +00:00
vm_param.h Make MAXTSIZ, DFLDSIZ, MAXDSIZ, DFLSSIZ, MAXSSIZ, SGROWSIZ loader 2001-10-10 23:06:54 +00:00
vm_swap.c - Replace v_flag with v_iflag and v_vflag 2002-08-04 10:29:36 +00:00
vm_unix.c Part I of RLIMIT_VMEM implementation. Implement core functionality for 2002-06-26 00:29:28 +00:00
vm_zeroidle.c Set P_NOLOAD on the pagezero kthread so that it doesn't artificially skew 2002-07-19 21:06:01 +00:00
vm.h - Remove a number of extra newlines that do not belong here according to 2002-03-10 21:52:48 +00:00
vnode_pager.c o Retire vm_page_zero_fill() and vm_page_zero_fill_area(). Ever since 2002-08-25 00:22:31 +00:00
vnode_pager.h Remove __P. 2002-03-19 22:20:14 +00:00