From: Chuck Lever <cel@kernel.org>
To: NeilBrown <neil@brown.name>, Jeff Layton <jlayton@kernel.org>,
Olga Kornievskaia <okorniev@redhat.com>,
Dai Ngo <dai.ngo@oracle.com>, Tom Talpey <tom@talpey.com>
Cc: <linux-nfs@vger.kernel.org>
Subject: [PATCH 5/5] NFSD: Document reply_cache_stats ABI
Date: Thu, 16 Jul 2026 20:12:32 -0400 [thread overview]
Message-ID: <20260717001232.438792-6-cel@kernel.org> (raw)
In-Reply-To: <20260717001232.438792-1-cel@kernel.org>
/proc/fs/nfsd/reply_cache_stats has been present since v3.10 but
has no entry in Documentation/ABI/. Add one under testing/ that
documents the current field set, types, and parsing expectations.
This establishes a contract that parsers should match on field
name rather than line position, allowing fields to be added or
removed across kernel versions without breaking well-written
consumers.
Signed-off-by: Chuck Lever <cel@kernel.org>
---
.../ABI/testing/procfs-nfsd-reply_cache_stats | 38 +++++++++++++++++++
1 file changed, 38 insertions(+)
create mode 100644 Documentation/ABI/testing/procfs-nfsd-reply_cache_stats
diff --git a/Documentation/ABI/testing/procfs-nfsd-reply_cache_stats b/Documentation/ABI/testing/procfs-nfsd-reply_cache_stats
new file mode 100644
index 000000000000..57ed5f8e6597
--- /dev/null
+++ b/Documentation/ABI/testing/procfs-nfsd-reply_cache_stats
@@ -0,0 +1,38 @@
+What: /proc/fs/nfsd/reply_cache_stats
+Date: March 2013
+KernelVersion: 3.10
+Contact: linux-nfs@vger.kernel.org
+Description:
+ Provides statistics for the NFS server duplicate reply
+ cache (DRC). The file contains one labeled field per
+ line. Each line has the form "field name:" followed by
+ whitespace and a decimal value.
+
+ Fields:
+
+ ======================= ====== ==========================
+ max entries u32 Upper bound on cache size
+ num entries u32 Current entry count
+ hash buckets u32 Number of hash buckets
+ mem usage s64 Bytes consumed by the DRC
+ cache hits s64 Requests answered from cache
+ cache misses s64 Requests not found in cache
+ not cached s64 Idempotent requests that
+ bypass the cache
+ payload misses s64 XID matched but request
+ checksum did not
+ longest chain len u32 Longest hash chain observed
+ cachesize at longest u32 Cache size when longest
+ chain was recorded
+ ======================= ====== ==========================
+
+ Counter fields (cache hits, cache misses, not cached,
+ payload misses, mem usage) are maintained with per-cpu
+ counters and may briefly show stale values under
+ concurrent load. There is no way to reset these
+ counters; consumers should compute rates by sampling
+ over time.
+
+ New fields may be appended in future kernels. Parsers
+ should match on field name, not line position.
+Users: nfs-utils (https://git.linux-nfs.org/?p=steved/nfs-utils.git)
--
2.54.0
next prev parent reply other threads:[~2026-07-17 0:12 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-17 0:12 [PATCH 0/5] Minor NFSD global DRC clean-ups Chuck Lever
2026-07-17 0:12 ` [PATCH 1/5] NFSD: Fix off-by-one in DRC bucket pruning limit Chuck Lever
2026-07-17 0:12 ` [PATCH 2/5] NFSD: Eliminate percpu counter contention in DRC memory accounting Chuck Lever
2026-07-17 0:12 ` [PATCH 3/5] NFSD: Eliminate percpu counter contention in reply cache statistics Chuck Lever
2026-07-17 0:12 ` [PATCH 4/5] NFSD: Eliminate percpu counter contention in IO byte accounting Chuck Lever
2026-07-17 0:12 ` Chuck Lever [this message]
2026-07-17 4:44 ` [PATCH 0/5] Minor NFSD global DRC clean-ups NeilBrown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260717001232.438792-6-cel@kernel.org \
--to=cel@kernel.org \
--cc=dai.ngo@oracle.com \
--cc=jlayton@kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=neil@brown.name \
--cc=okorniev@redhat.com \
--cc=tom@talpey.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.