freebsd-src/sys/vm
Mark Johnston 4ab3aee8fb Reduce lock hold time in keg_drain().
Maintain a count of free slabs in the per-domain keg structure and use
that to clear the free slab list in constant time for most cases.  This
helps minimize lock contention induced by reclamation, in preparation
for proactive trimming of excesses of free memory.

Reviewed by:	jeff, rlibby
Tested by:	pho
Differential Revision:	https://reviews.freebsd.org/D23532
2020-02-11 20:06:33 +00:00
..
_vm_radix.h
default_pager.c
device_pager.c Don't hold the object lock while calling getpages. 2020-01-19 23:47:32 +00:00
memguard.c vm: add missing CLTFLAG_MPSAFE annotations 2020-01-12 05:08:57 +00:00
memguard.h
phys_pager.c Don't hold the object lock while calling getpages. 2020-01-19 23:47:32 +00:00
pmap.h Remove page locking from pmap_mincore(). 2019-10-16 22:03:27 +00:00
redzone.c
redzone.h
sg_pager.c Don't hold the object lock while calling getpages. 2020-01-19 23:47:32 +00:00
swap_pager.c Don't hold the object lock while calling getpages. 2020-01-19 23:47:32 +00:00
swap_pager.h
uma.h uma: remove UMA_ZFLAG_CACHEONLY flag 2020-02-06 08:32:25 +00:00
uma_core.c Reduce lock hold time in keg_drain(). 2020-02-11 20:06:33 +00:00
uma_dbg.c
uma_dbg.h
uma_int.h Reduce lock hold time in keg_drain(). 2020-02-11 20:06:33 +00:00
vm.h
vm_domainset.c
vm_domainset.h
vm_extern.h Improve MD page fault handlers. 2019-09-27 18:43:36 +00:00
vm_fault.c Restore OOM logic on page fault after r357026. 2020-01-29 12:02:47 +00:00
vm_glue.c Consistently use busy and vm_page_valid() rather than touching page bits 2020-01-23 04:54:49 +00:00
vm_init.c Simplify VM and UMA startup by eliminating boot pages. Instead use careful 2020-01-16 05:01:21 +00:00
vm_kern.c Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00
vm_kern.h
vm_map.c Most uses of vm_map_clip_start follow a call to vm_map_lookup. Define 2020-01-24 07:48:11 +00:00
vm_map.h Revert r355505. The code that it allowed to compile has been removed. 2019-12-09 05:09:46 +00:00
vm_meter.c Simplify anonymous memory handling with an OBJ_ANON flag. This eliminates 2019-11-19 23:19:43 +00:00
vm_mmap.c vfs: replace VOP_MARKATIME with VOP_MMAPPED 2020-02-01 06:46:55 +00:00
vm_object.c Enable vm_object_mightbedirty() and vm_object_page_clean() for swap 2020-02-04 19:03:37 +00:00
vm_object.h Enable vm_object_mightbedirty() and vm_object_page_clean() for swap 2020-02-04 19:03:37 +00:00
vm_page.c Add an explicit busy state for free pages. This improves behavior with 2020-02-04 20:33:01 +00:00
vm_page.h Add an explicit busy state for free pages. This improves behavior with 2020-02-04 20:33:01 +00:00
vm_pageout.c Modify the vm.panic_on_oom sysctl to take a count of events. 2020-02-10 18:06:38 +00:00
vm_pageout.h Fix OOM handling of some corner cases. 2019-08-16 09:43:49 +00:00
vm_pagequeue.h Simplify vm_pageout_init_domain() and add a "big picture" comment. 2019-11-22 16:31:43 +00:00
vm_pager.c Don't hold the object lock while calling getpages. 2020-01-19 23:47:32 +00:00
vm_pager.h Add a deferred free mechanism for freeing swap space that does not require 2019-12-15 03:15:06 +00:00
vm_param.h (fault 3/9) Move map relookup into a dedicated function. 2020-01-23 05:07:01 +00:00
vm_phys.c Fix typo using RB_INITIALIZER. 2019-12-22 21:53:05 +00:00
vm_phys.h Encapsulate phys_avail manipulation in a set of simple routines. Add a 2019-08-18 07:06:31 +00:00
vm_radix.c
vm_radix.h
vm_reserv.c vm: add missing CLTFLAG_MPSAFE annotations 2020-01-12 05:08:57 +00:00
vm_reserv.h Fix locking in vm_reserv_reclaim_contig(). 2019-11-22 16:28:52 +00:00
vm_swapout.c Don't hold the object lock while calling getpages. 2020-01-19 23:47:32 +00:00
vm_swapout_dummy.c
vm_unix.c
vnode_pager.c Fix up various vnode-related asserts which did not dump the used vnode 2020-02-03 14:25:32 +00:00
vnode_pager.h vm pager: writemapping accounting for OBJT_SWAP 2019-09-03 20:31:48 +00:00