freebsd-dev/sys/vm
Alan Cox 0b6ace4743 Setting PG_REFERENCED on the requested page in swap_pager_getpages() is
either redundant or harmful, depending on the caller.  For example, when
called by vm_fault(), it is redundant.  However, when called by
vm_thread_swapin(), it is harmful.  Specifically, if the thread is later
swapped out, having PG_REFERENCED set on its stack pages leads the page
daemon to reactivate these stack pages and delay their reclamation.

Reviewed by:	kib
MFC after:	3 weeks
2010-04-17 17:02:17 +00:00
..
default_pager.c Implement global and per-uid accounting of the anonymous memory. Add 2009-06-23 20:45:22 +00:00
device_pager.c Update d_mmap() to accept vm_ooffset_t and vm_memattr_t. 2009-12-29 21:51:28 +00:00
memguard.c Start copyright notice with /*- 2010-04-07 16:29:10 +00:00
memguard.h Start copyright notice with /*- 2010-04-07 16:29:10 +00:00
phys_pager.c Implement global and per-uid accounting of the anonymous memory. Add 2009-06-23 20:45:22 +00:00
pmap.h o Introduce vm_sync_icache() for making the I-cache coherent with 2009-10-21 18:38:02 +00:00
redzone.c Fix REDZONE(9) on amd64 and perhaps other 64 bit targets -- ensure the space 2008-08-13 17:32:48 +00:00
redzone.h
sg_pager.c Mark the fake pages constructed by the OBJT_SG pager valid. This was 2009-08-29 02:17:40 +00:00
swap_pager.c Setting PG_REFERENCED on the requested page in swap_pager_getpages() is 2010-04-17 17:02:17 +00:00
swap_pager.h
uma_core.c (S)LIST_HEAD_INITIALIZER takes a (S)LIST_HEAD as an argument. 2009-12-28 22:56:30 +00:00
uma_dbg.c - Make the keg abstraction more complete. Permit a zone to have multiple 2009-01-25 09:11:24 +00:00
uma_dbg.h
uma_int.h - enable alignment on amd64 only 2010-03-22 22:39:32 +00:00
uma.h - Make the keg abstraction more complete. Permit a zone to have multiple 2009-01-25 09:11:24 +00:00
vm_contig.c Introduce the function kmem_alloc_attr(), which allocates kernel virtual 2010-04-09 02:39:20 +00:00
vm_extern.h Initialize the virtual memory-related resource limits in a single place. 2010-04-11 16:26:07 +00:00
vm_fault.c When OOM searches for a process to kill, ignore the processes already 2010-04-06 10:43:01 +00:00
vm_glue.c Simplify vm_thread_swapin(). 2010-04-13 06:48:37 +00:00
vm_init.c Align the start of the clean submap to a superpage boundary. Although 2010-02-21 22:23:13 +00:00
vm_kern.c Implement global and per-uid accounting of the anonymous memory. Add 2009-06-23 20:45:22 +00:00
vm_kern.h Enable the creation of a kmem map larger than 4GB. 2008-07-05 19:34:33 +00:00
vm_map.c Make _vm_map_init() the one place where the vm map's pmap field is 2010-04-03 19:07:05 +00:00
vm_map.h Make _vm_map_init() the one place where the vm map's pmap field is 2010-04-03 19:07:05 +00:00
vm_meter.c Add a new type of VM object: OBJT_SG. An OBJT_SG object is very similar to 2009-07-24 13:50:29 +00:00
vm_mmap.c Reject attempts to create a MAP_ANON mapping with a non-zero offset. 2010-03-23 21:08:07 +00:00
vm_object.c VI_OBJDIRTY vnode flag mirrors the state of OBJ_MIGHTBEDIRTY vm object 2009-12-21 12:29:38 +00:00
vm_object.h VI_OBJDIRTY vnode flag mirrors the state of OBJ_MIGHTBEDIRTY vm object 2009-12-21 12:29:38 +00:00
vm_page.c vm_reserv_alloc_page() should never be called on an OBJT_SG object, just as 2010-04-05 06:23:31 +00:00
vm_page.h Align and pad the page queue and free page queue locks so that the linker 2009-10-04 18:53:10 +00:00
vm_pageout.c When OOM searches for a process to kill, ignore the processes already 2010-04-06 10:43:01 +00:00
vm_pageout.h Move the code for doing out-of-memory grass from vm_pageout_scan() 2008-09-29 19:45:12 +00:00
vm_pager.c Add a new type of VM object: OBJT_SG. An OBJT_SG object is very similar to 2009-07-24 13:50:29 +00:00
vm_pager.h Add a new type of VM object: OBJT_SG. An OBJT_SG object is very similar to 2009-07-24 13:50:29 +00:00
vm_param.h Fix CTL_VM_NAMES. 2007-10-16 11:32:57 +00:00
vm_phys.c Add support to the virtual memory system for configuring machine- 2009-07-12 23:31:20 +00:00
vm_phys.h Add support to the virtual memory system for configuring machine- 2009-07-12 23:31:20 +00:00
vm_reserv.c Previously, when vm_page_free_toq() was performed on a page belonging to 2009-04-11 09:09:00 +00:00
vm_reserv.h Introduce vm_reserv_reclaim_contig(). This function is used by 2008-04-06 18:09:28 +00:00
vm_unix.c Remove execute permission from the memory allocated by sbrk(). 2009-04-11 22:34:08 +00:00
vm_zeroidle.c Split P_NOLOAD into a per-thread flag (TDF_NOLOAD). 2009-11-03 16:46:52 +00:00
vm.h Replace VM_PROT_OVERRIDE_WRITE by VM_PROT_COPY. VM_PROT_OVERRIDE_WRITE has 2009-11-26 05:16:07 +00:00
vnode_pager.c Remove write-only variable. 2010-02-22 16:00:56 +00:00
vnode_pager.h Do not sleep for vnode lock while holding map lock in vm_fault. Try to 2009-02-08 20:23:46 +00:00