freebsd-dev/sys/vm
Mark Johnston aabe13f145 uma: Introduce per-domain reclamation functions
Make it possible to reclaim items from a specific NUMA domain.

- Add uma_zone_reclaim_domain() and uma_reclaim_domain().
- Permit parallel reclamations.  Use a counter instead of a flag to
  synchronize with zone_dtor().
- Use the zone lock to protect cache_shrink() now that parallel reclaims
  can happen.
- Add a sysctl that can be used to trigger reclamation from a specific
  domain.

Currently the new KPIs are unused, so there should be no functional
change.

Reviewed by:	mav
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D29685
2021-04-14 13:03:34 -04:00
..
_vm_phys.h
_vm_radix.h
default_pager.c
device_pager.c
memguard.c
memguard.h
phys_pager.c
pmap.h
redzone.c
redzone.h
sg_pager.c
swap_pager.c
swap_pager.h
uma_core.c uma: Introduce per-domain reclamation functions 2021-04-14 13:03:34 -04:00
uma_dbg.c
uma_dbg.h
uma_int.h uma: Introduce per-domain reclamation functions 2021-04-14 13:03:34 -04:00
uma.h uma: Introduce per-domain reclamation functions 2021-04-14 13:03:34 -04:00
vm_domainset.c
vm_domainset.h
vm_dumpset.h
vm_extern.h
vm_fault.c vm_fault: Shoot down multiply mapped COW source page mappings 2021-04-06 14:49:28 -04:00
vm_glue.c kstack: Add KASAN state transitions 2021-04-13 17:42:21 -04:00
vm_init.c
vm_kern.c uma: Introduce per-domain reclamation functions 2021-04-14 13:03:34 -04:00
vm_kern.h
vm_map.c
vm_map.h
vm_meter.c Use atomic loads/stores when updating td->td_state 2021-02-18 14:02:48 +00:00
vm_mmap.c Rename kern_mmap_req to kern_mmap 2021-01-25 21:50:37 +00:00
vm_object.c
vm_object.h
vm_page.c vm: Round up npages and alignment for contig reclamation 2021-03-02 10:21:02 -05:00
vm_page.h Add a VM flag to prevent reclaim on a failed contig allocation 2021-02-03 16:16:51 -05:00
vm_pageout.c
vm_pageout.h
vm_pagequeue.h
vm_pager.c
vm_pager.h
vm_param.h
vm_phys.c
vm_phys.h
vm_radix.c
vm_radix.h
vm_reserv.c vm_reserv: Fix list locking in vm_reserv_reclaim_contig() 2021-03-11 10:35:35 -05:00
vm_reserv.h
vm_swapout_dummy.c
vm_swapout.c
vm_unix.c
vm.h Add a VA_IS_CLEANMAP() macro. 2021-02-17 16:32:11 -08:00
vnode_pager.c Remove unused obj variable missed in r354870. 2021-03-17 15:29:15 -07:00
vnode_pager.h