freebsd-dev/sys/vm
Attilio Rao a4915c21d9 Merge from vmc-playground branch:
Replace the sub-optimal uma_zone_set_obj() primitive with more modern
uma_zone_reserve_kva().  The new primitive reserves before hand
the necessary KVA space to cater the zone allocations and allocates pages
with ALLOC_NOOBJ.  More specifically:
- uma_zone_reserve_kva() does not need an object to cater the backend
  allocator.
- uma_zone_reserve_kva() can cater M_WAITOK requests, in order to
  serve zones which need to do uma_prealloc() too.
- When possible, uma_zone_reserve_kva() uses directly the direct-mapping
  by uma_small_alloc() rather than relying on the KVA / offset
  combination.

The removal of the object attribute allows 2 further changes:
1) _vm_object_allocate() becomes static within vm_object.c
2) VM_OBJECT_LOCK_INIT() is removed.  This function is replaced by
   direct calls to mtx_init() as there is no need to export it anymore
   and the calls aren't either homogeneous anymore: there are now small
   differences between arguments passed to mtx_init().

Sponsored by:	EMC / Isilon storage division
Reviewed by:	alc (which also offered almost all the comments)
Tested by:	pho, jhb, davide
2013-02-26 23:35:27 +00:00
..
default_pager.c Replace pointer to "struct uidinfo" with pointer to "struct ucred" 2010-12-02 17:37:16 +00:00
device_pager.c Fix a bug in the device pager code that can trigger an assertion 2013-01-09 16:48:38 +00:00
memguard.c Fix a bug with memguard(9) on 32-bit architectures without a 2012-07-15 20:29:48 +00:00
memguard.h Fix a bug with memguard(9) on 32-bit architectures without a 2012-07-15 20:29:48 +00:00
phys_pager.c Remove unneeded includes of <sys/linker_set.h>. Other headers that use 2011-01-11 13:59:06 +00:00
pmap.h The page flag PGA_WRITEABLE is set and cleared exclusively by the pmap 2012-06-16 18:56:19 +00:00
redzone.c Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
redzone.h
sg_pager.c Move the declaration of vm_phys_paddr_to_vm_page() from vm/vm_page.h 2012-11-16 05:55:56 +00:00
swap_pager.c Merge from vmc-playground branch: 2013-02-26 23:35:27 +00:00
swap_pager.h Implement the linprocfs swaps file, providing information about the 2011-08-01 19:12:15 +00:00
uma_core.c Merge from vmc-playground branch: 2013-02-26 23:35:27 +00:00
uma_dbg.c
uma_dbg.h
uma_int.h Merge from vmc-playground branch: 2013-02-26 23:35:27 +00:00
uma.h Merge from vmc-playground branch: 2013-02-26 23:35:27 +00:00
vm_extern.h Eliminate vm_phys_bootstrap_alloc(). It was a failed attempt at 2011-10-30 05:06:14 +00:00
vm_fault.c - Add system wide page faults requiring I/O counter. 2013-01-28 12:54:53 +00:00
vm_glue.c Move the corresponding MTX_SYSINIT() next to their struct mtx declaration 2012-10-26 17:31:35 +00:00
vm_init.c
vm_kern.c On arm, like sparc64, the end of the kernel map varies from one type of 2013-02-18 01:02:48 +00:00
vm_kern.h
vm_map.c Merge from vmc-playground branch: 2013-02-26 23:35:27 +00:00
vm_map.h - Get rid of unused function vmspace_wired_count(). 2013-01-14 12:12:56 +00:00
vm_meter.c - Add system wide page faults requiring I/O counter. 2013-01-28 12:54:53 +00:00
vm_mmap.c - Reduce kernel size by removing unnecessary pointer indirections. 2013-01-10 12:43:58 +00:00
vm_object.c Merge from vmc-playground branch: 2013-02-26 23:35:27 +00:00
vm_object.h Merge from vmc-playground branch: 2013-02-26 23:35:27 +00:00
vm_page.c Wrap the sleeps synchronized by the vm_object lock into the specific 2013-02-26 17:22:08 +00:00
vm_page.h Update a comment to reflect the elimination of the hold queue in r242300. 2012-11-17 04:00:19 +00:00
vm_pageout.c - Add sysctls to show number of stats scans. 2013-01-28 12:20:20 +00:00
vm_pageout.h Move what remains of vm/vm_contig.c into vm/vm_pageout.c, where similar 2012-07-18 05:21:34 +00:00
vm_pager.c vm_pager_object_lookup: small performance optimization 2012-05-23 12:51:49 +00:00
vm_pager.h Add new pager type, OBJT_MGTDEVICE. It provides the device pager 2012-05-12 20:49:58 +00:00
vm_param.h
vm_phys.c Make VM_NDOMAIN a kernel option so that it can be enabled from a kernel 2013-02-14 19:38:04 +00:00
vm_phys.h Move the declaration of vm_phys_paddr_to_vm_page() from vm/vm_page.h 2012-11-16 05:55:56 +00:00
vm_reserv.c Correct an off-by-one error in vm_reserv_alloc_contig() that resulted in 2012-07-15 21:46:19 +00:00
vm_reserv.h Introduce vm_reserv_alloc_contig() and teach vm_page_alloc_contig() how to 2011-12-05 18:29:25 +00:00
vm_unix.c - Improve readability of sys_obreak(). 2013-01-11 09:58:35 +00:00
vm_zeroidle.c
vm.h - Fix locked memory accounting for maps with MAP_WIREFUTURE flag. 2012-12-18 07:35:01 +00:00
vnode_pager.c Remove white spaces. 2013-02-26 20:35:40 +00:00
vnode_pager.h Account the writeable shared mappings backed by file in the vnode 2012-02-23 21:07:16 +00:00