mirror_zfs/include
Alexander Motin db290fd48b Linux: Stop using NR_FILE_PAGES for ARC scaling
I've found that QEMU/KVM guest memory accounted as shared also
included into NR_FILE_PAGES.  But it is actually a non-evictable
anonymous memory.  Using it as a base for zfs_arc_pc_percent
parameter makes ARC to ignore shrinker requests while page cache
does not really have anything to evict, ending up in OOM killer
killing the QEMU process.

Instead use of NR_ACTIVE_FILE + NR_INACTIVE_FILE should represent
the part of a page cache that is actually evictable, which should
be safer to use as a reference for ARC scaling.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Ameer Hamza <ahamza@ixsystems.com>
Reviewed-by: Pavel Snajdr <snajpa@snajpa.net>
Signed-off-by:	Alexander Motin <mav@FreeBSD.org>
Sponsored by:	iXsystems, Inc.
Closes #17334
(cherry picked from commit 0aa83dce99)
2025-05-28 16:00:28 -07:00
..
os Linux: Stop using NR_FILE_PAGES for ARC scaling 2025-05-28 16:00:28 -07:00
sys txg: generalise txg_wait_synced_sig() to txg_wait_synced_flags() (#17284) 2025-05-28 16:00:28 -07: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 SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -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