freebsd-dev/cddl/contrib/opensolaris
Alexander Motin b17bfcde3d 9018 Replace kmem_cache_reap_now() with kmem_cache_reap_soon()
illumos/illumos-gate@36a64e6284

To prevent kmem_cache reaping from blocking other system resources, turn
kmem_cache_reap_now() (which blocks) into kmem_cache_reap_soon(). Callers
to kmem_cache_reap_soon() should use kmem_cache_reap_active(), which
exploits #9017's new taskq_empty().

Reviewed by: Bryan Cantrill <bryan@joyent.com>
Reviewed by: Dan McDonald <danmcd@joyent.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Yuri Pankov <yuripv@yuripv.net>
Author: Tim Kordas <tim.kordas@joyent.com>

FreeBSD does not use taskqueue for kmem caches reaping, so this change
is less dramatic then it is on Illumos, just limiting reaping to 1 time
per second.  It may possibly be improved later, if needed.
2018-02-21 23:15:06 +00:00
..
cmd MFV r329502: 7614 zfs device evacuation/removal 2018-02-21 16:51:02 +00:00
common Recursively enumerate anonymous structs and unions in ctf_member_info(). 2016-08-30 05:50:42 +00:00
head MFV r270197: 2014-08-22 22:13:36 +00:00
lib 9018 Replace kmem_cache_reap_now() with kmem_cache_reap_soon() 2018-02-21 23:15:06 +00:00
tools/ctf Revert r253678, r253661: 2016-12-03 17:44:43 +00:00
OPENSOLARIS.LICENSE