]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
uma: Introduce per-domain reclamation functions
authorMark Johnston <markj@FreeBSD.org>
Wed, 14 Apr 2021 16:57:24 +0000 (12:57 -0400)
committerMark Johnston <markj@FreeBSD.org>
Wed, 28 Apr 2021 14:00:52 +0000 (10:00 -0400)
commit0758fa13b43b2b913856b444a65338afadf5abd1
tree29e4fd740e2704617db64358be48122ee6e1bb89
parent6eddb6822c9abe8a96fb1ad764aee231951ee87f
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
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D29685

(cherry picked from commit aabe13f1450bb4caba66ec2a7a41c0dfefff511d)
share/man/man9/zone.9
sys/vm/uma.h
sys/vm/uma_core.c
sys/vm/uma_int.h
sys/vm/vm_kern.c