From e26a454e0d3bda1903648be79b6ff06de2c20c19 Mon Sep 17 00:00:00 2001 From: Charles Hedrick Date: Fri, 29 Nov 2024 09:32:15 -0500 Subject: [PATCH] describe when zfs_readdir_dnode_prefetch_limit should be used Signed-off-by: Charles Hedrick --- man/man4/zfs.4 | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/man/man4/zfs.4 b/man/man4/zfs.4 index 539a309eac7d..a88d6f78fdda 100644 --- a/man/man4/zfs.4 +++ b/man/man4/zfs.4 @@ -1781,8 +1781,11 @@ all objects in the directory it checks, even if it's just looking for a single object. Setting this to a non-zero value disables that prefetching for directories with a greater size than that value. -Disabling it for large directories can greatly lower CPU usage on NFS servers -where directories have a very large number of subdirectories. +Disabling prefetch for large directories can greatly lower CPU usage on NFS servers +where directories have a very large number of subdirectories. +Consider setting this parameter if your primary access is via NFS, you have +unusually high CPU used by nfsd processes, and arcstat shows very high metadata +read rates compared with other activity. Directory size in this case is the size returned from calling .Sy stat on the directory (stat.st_size).