mirror_zfs/module
Alexander Motin 523e1295fe
Introduce limit on size of L2ARC headers
Since L2ARC buffers are not evicted on memory pressure, too large
amount of headers on system with irrationally large L2ARC can render
it slow or even unusable.  This change limits L2ARC writes and
rebuild if unevictable L2ARC-only headers reach dangerous level.

While there, call arc_adapt() on L2ARC rebuild, so that it could
properly grow arc_c, reflecting potentially significant ARC size
increase and avoiding slow growth with hopeless eviction attempts
later when "overflow" is detected.

Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reported-by: Richard Elling <Richard.Elling@RichardElling.com>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Closes #10765
2020-08-25 14:33:36 -07:00
..
avl Make use of ZFS_DEBUG consistent within kmod sources 2020-07-25 20:07:44 -07:00
icp Prefix zfs internal endian checks with _ZFS 2020-07-28 13:02:49 -07:00
lua Mark lua setjmp/longjmp for powerpc weak 2020-08-25 10:32:49 -07:00
nvpair Prefix zfs internal endian checks with _ZFS 2020-07-28 13:02:49 -07:00
os Fix inability to destroy snapshot used over NFS 2020-08-24 17:33:02 -07:00
spl Cleanup linux module kbuild files 2020-06-10 09:24:15 -07:00
unicode Prefix zfs internal endian checks with _ZFS 2020-07-28 13:02:49 -07:00
zcommon Make formatting of dedup values string consistent 2020-08-22 10:58:07 -07:00
zfs Introduce limit on size of L2ARC headers 2020-08-25 14:33:36 -07:00
zstd Avoid symbol collision with in-kernel zstdlib 2020-08-24 12:20:41 -07:00
.gitignore Cleanup linux module kbuild files 2020-06-10 09:24:15 -07:00
Kbuild.in Add zstd support to zfs 2020-08-20 10:30:06 -07:00
Makefile.bsd FreeBSD: 11.x arc_stats compatibility 2020-08-20 10:55:02 -07:00
Makefile.in Add zstd support to zfs 2020-08-20 10:30:06 -07:00