mirror_zfs/include
shodanshok 4808641e71 enforce arc_dnode_limit
Linux kernel shrinker in the context of null/root memcg does not scan
dentry and inode caches added by a task running in non-root memcg. For
ZFS this means that dnode cache routinely overflows, evicting valuable
meta/data and putting additional memory pressure on the system.

This patch restores zfs_prune_aliases as fallback when the kernel
shrinker does nothing, enabling zfs to actually free dnodes. Moreover,
it (indirectly) calls arc_evict when dnode_size > dnode_limit.

Reviewed-by: Rob Norris <robn@despairlabs.com>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Gionatan Danti <g.danti@assyoma.it>
Closes #17487
Closes #17542
2025-08-07 12:11:34 -04:00
..
os Define sops->free_inode() to prevent use-after-free during lookup 2025-08-05 12:30:23 -04:00
sys enforce arc_dnode_limit 2025-08-07 12:11:34 -04:00
.gitignore OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
cityhash.h SPDX: license tags: MIT 2025-04-16 09:59:44 -07:00
libnvpair.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
libuutil_common.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
libuutil_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
libuutil.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
libzdb.h libzdb: Initial breakout of libzdb 2024-02-05 10:00:41 -08:00
libzfs_core.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
libzfs.h Expose dataset encryption status via fast stat path 2025-06-17 10:49:40 -07:00
libzfsbootenv.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
libzutil.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
Makefile.am include: move zio_priority_t into zfs.h 2025-02-28 00:42:29 +05:00
thread_pool.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfeature_common.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_comutil.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_deleg.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_fletcher.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_namecheck.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_prop.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_valstr.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00