From nobody Wed Oct 4 12:08:58 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S0tlG5XrYz4vp20; Wed, 4 Oct 2023 12:08:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S0tlG4KCWz3JTl; Wed, 4 Oct 2023 12:08:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696421338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gipxOST8gE/Q+sOGL2qFGRvmAA6Tvw/LjGcQKS00EpU=; b=JYmI1bPCsy+dzyngtrSTf98S9bvPg3+4432OaxYNp/9BmfJ6V1ANMLBfEztcqYfr5taJXp lF2OhJIjU1U6j7LyErxnkb8zOaP7quXgOGuUfRRHNcYspw5DOP0s+Nulbd/xbUd3R2SEiS Wj0zThswMYJCm1EG9bx67xOvfMUh8gzMz8JDmfFVqMWKxJF96VuuL81QeVZkN5X1PUFj2p mkfLpeFSXoznKe6bZnVT+acfE7wqUVexy6EMf991aElKAnPJfGtjEbqHfn4l9sP1D3HyKN XUUxXShk4EBr1qinXRZ6uj63cEPCmW02nHGweqT+JYrySPHdyLmeCcsiMBoblA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696421338; a=rsa-sha256; cv=none; b=KX/eqqTARUGa6OE7h4AhdsdxFm5Dseynk8sJ6gN1lCkd/Hwaum4JZDBZgzgD0G7JwC62RF +6tUZbTsoyVxXI1I6EGGdK7h7lIKZvkxYJerhozV2C1E1nwADjToFqJ5nL9A701hwH4zVa D199UleJB4W07JjuwDqmkGdVZd2b0brW3KCEDMzpUqr9Pf7afShgNxpEDZyGhMCDgCXPc8 6ITL6zHQDAThNEJ5mVDguxnwc3YWpkZG/72/lKMiKdAId6JNjtmqjuXdypwd0+xNDbFMK4 KplV0q+RG+jxxMCdYJVcwpAI6aVFjSBoofj7B10h0jxPosBptax923AofxDsIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696421338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gipxOST8gE/Q+sOGL2qFGRvmAA6Tvw/LjGcQKS00EpU=; b=DB8Xrhz3IK1Ll6qTIqWuoDH/XI8aFfBfrC5xwizzlH5SJWaG+QwXmE4Rg/bApPXZ4hNtWS qv+IG6182242ZxSrP0W/lllGxmm0Nyp9zc5Y/fuT0N8i6+lD8L8H/soJV1FJRgEiU6SjDz mxObzLa2D5skrTh7P1E/mtlaFZx5e/mJiTIH1CFBy6Zw1pzfqR59KL3WRZr+/Hcr2sZ+qb uc+i/eFKIAjeX5A7HS9WwHmtCec54SHzNfacEVvR/VsjXJgh6WHgEeZR0wJJnT3cCZK+W7 W5mU8TTTiuLESXLfZwW9K3KGpiL5s1SOBQcHL/gf5s2TL+PeJGWM3tJTJ6iW2g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4S0tlG3L4kzccP; Wed, 4 Oct 2023 12:08:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 394C8wq4053486; Wed, 4 Oct 2023 12:08:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 394C8wNB053483; Wed, 4 Oct 2023 12:08:58 GMT (envelope-from git) Date: Wed, 4 Oct 2023 12:08:58 GMT Message-Id: <202310041208.394C8wNB053483@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 4bddcc418971 - stable/13 - vfs: stabilize freevnodes_old List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4bddcc418971bf21fb5e760248045f8a222a9a80 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=4bddcc418971bf21fb5e760248045f8a222a9a80 commit 4bddcc418971bf21fb5e760248045f8a222a9a80 Author: Mateusz Guzik AuthorDate: 2023-09-16 15:41:12 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-04 12:05:58 +0000 vfs: stabilize freevnodes_old In face of parallel callers. (cherry picked from commit ef89b78bb1f60484cc743fa590d623ad896ca8e9) --- sys/kern/vfs_subr.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index b125438923bf..37554858173f 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1545,21 +1545,22 @@ vfs_freevnodes_dec(void) static u_long vnlru_read_freevnodes(void) { - long slop, rfreevnodes; + long slop, rfreevnodes, rfreevnodes_old; int cpu; rfreevnodes = atomic_load_long(&freevnodes); + rfreevnodes_old = atomic_load_long(&freevnodes_old); - if (rfreevnodes > freevnodes_old) - slop = rfreevnodes - freevnodes_old; + if (rfreevnodes > rfreevnodes_old) + slop = rfreevnodes - rfreevnodes_old; else - slop = freevnodes_old - rfreevnodes; + slop = rfreevnodes_old - rfreevnodes; if (slop < VNLRU_FREEVNODES_SLOP) return (rfreevnodes >= 0 ? rfreevnodes : 0); - freevnodes_old = rfreevnodes; CPU_FOREACH(cpu) { - freevnodes_old += cpuid_to_pcpu[cpu]->pc_vfs_freevnodes; + rfreevnodes += cpuid_to_pcpu[cpu]->pc_vfs_freevnodes; } + atomic_store_long(&freevnodes_old, rfreevnodes); return (freevnodes_old >= 0 ? freevnodes_old : 0); }