git: 95528b6ff1aa - stable/14 - VFS cache: Fix initial sizing for non-default 'ncsizefactor'

From: Olivier Certner <olce_at_FreeBSD.org>
Date: Thu, 08 May 2025 18:37:17 UTC
The branch stable/14 has been updated by olce:

URL: https://cgit.FreeBSD.org/src/commit/?id=95528b6ff1aa630f98231fd907b79760f7346cd7

commit 95528b6ff1aa630f98231fd907b79760f7346cd7
Author:     Olivier Certner <olce@FreeBSD.org>
AuthorDate: 2025-05-01 10:30:49 +0000
Commit:     Olivier Certner <olce@FreeBSD.org>
CommitDate: 2025-05-08 18:36:37 +0000

    VFS cache: Fix initial sizing for non-default 'ncsizefactor'
    
    Reviewed by:    markj
    MFC after:      3 days
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D50120
    
    (cherry picked from commit 811f6a0ae0230fb09b666276cbe93a8be4fe7c73)
---
 sys/kern/vfs_cache.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index 92e9d77eb891..300173347401 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -2685,7 +2685,7 @@ nchinit(void *dummy __unused)
 
 	ncsize = desiredvnodes * ncsizefactor;
 	cache_recalc_neg_min();
-	nchashtbl = nchinittbl(desiredvnodes * 2, &nchash);
+	nchashtbl = nchinittbl(ncsize, &nchash);
 	ncbuckethash = cache_roundup_2(mp_ncpus * mp_ncpus) - 1;
 	if (ncbuckethash < 7) /* arbitrarily chosen to avoid having one lock */
 		ncbuckethash = 7;