linux/fs/nfsd
Jeff Layton 46db3c8a1b nfsd: export NFSv4 callback op stats via netlink
Add a proc4cb-ops nested attribute to the server-stats netlink dump,
reusing the existing server-proc-entry (op/count) layout. The dump
gains a callback section that emits one entry per callback opcode
(OP_CB_GETATTR..OP_CB_OFFLOAD) from the per-netns callback counters,
paged across messages like the other per-operation sections.

This lets nfsstat report NFSv4 backchannel operation counts over
netlink, including CB_GETATTR which corresponds to the procfs
wdeleg_getattr line.

Assisted-by: LLM
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Link: https://patch.msgid.link/20260717-exportd-netlink-v7-6-b7ce17b83b60@kernel.org
Signed-off-by: Chuck Lever <cel@kernel.org>
2026-08-10 09:54:35 -04:00
..
acl.h NFSD: Add support for XDR decoding POSIX draft ACLs 2026-01-29 09:48:33 -05:00
attr4.h NFSD: Relocate NFSv4 "supported attributes" to new header 2026-08-10 09:54:35 -04:00
auth.c NFSD: Relocate nfsd_user_namespace() 2026-08-10 09:54:35 -04:00
auth.h NFSD: Relocate nfsd_user_namespace() 2026-08-10 09:54:35 -04:00
blocklayout.c exportfs: don't pass struct iattr to ->commit_blocks 2026-05-11 11:11:48 +02:00
blocklayoutxdr.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
blocklayoutxdr.h NFSD/blocklayout: Introduce layout content structure 2025-11-16 18:20:11 -05:00
cache.h NFSD: Remove '#include "nfsd.h"' from fs/nfsd/cache.h 2026-08-10 09:54:35 -04:00
current_stateid.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
debugfs.c nfsd: add a runtime switch for disabling delegated timestamps 2026-03-29 21:25:09 -04:00
export.c Revert "NFSD: Defer sub-object cleanup in export put callbacks" 2026-06-09 16:32:59 -04:00
export.h Revert "NFSD: Defer sub-object cleanup in export put callbacks" 2026-06-09 16:32:59 -04:00
filecache.c nfsd: add notification handlers for dir events 2026-08-10 09:54:35 -04:00
filecache.h nfsd: update the fsnotify mark when setting or removing a dir delegation 2026-08-10 09:54:35 -04:00
flexfilelayout.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
flexfilelayoutxdr.c nfsd: fix XDR length calculation in nfsd4_ff_encode_layoutget 2026-08-10 09:54:35 -04:00
flexfilelayoutxdr.h NFSD: Make @gdev parameter of ->encode_getdeviceinfo a const pointer 2023-10-16 12:44:29 -04:00
idmap.h
Kconfig NFSD: Sign filehandles 2026-03-29 21:25:09 -04:00
localio.c sunrpc: remove unused svc_version vs_count field 2026-08-10 09:54:35 -04:00
lockd.c lockd, nfsd: RCU-protect nlmsvc_ops dispatch 2026-08-10 09:54:35 -04:00
Makefile NFSD: Add instructions on how to deal with xdrgen files 2026-01-26 10:10:58 -05:00
netlink.c nfsd: implement server-stats-get netlink handler 2026-08-10 09:54:35 -04:00
netlink.h nfsd: implement server-stats-get netlink handler 2026-08-10 09:54:35 -04:00
netns.h nfsd: count NFSv4 callback operations per netns 2026-08-10 09:54:35 -04:00
nfs2acl.c sunrpc: remove unused svc_version vs_count field 2026-08-10 09:54:35 -04:00
nfs3acl.c sunrpc: remove unused svc_version vs_count field 2026-08-10 09:54:35 -04:00
nfs3proc.c sunrpc: remove unused svc_version vs_count field 2026-08-10 09:54:35 -04:00
nfs3xdr.c NFSD: Replace isdotent() macro 2026-08-10 09:54:35 -04:00
nfs4acl.c NFSD: Add support for XDR decoding POSIX draft ACLs 2026-01-29 09:48:33 -05:00
nfs4callback.c nfsd: count NFSv4 callback operations per netns 2026-08-10 09:54:35 -04:00
nfs4idmap.c NFSD: Relocate nfsd_user_namespace() 2026-08-10 09:54:35 -04:00
nfs4layouts.c nfsd: use RCU to protect fi_deleg_file 2026-08-10 09:54:35 -04:00
nfs4proc.c sunrpc: remove unused svc_version vs_count field 2026-08-10 09:54:35 -04:00
nfs4recover.c nfsd: dedup nfs4_client_to_reclaim inserts 2026-08-10 09:54:35 -04:00
nfs4state.c nfsd: count NFSv4 callback operations per netns 2026-08-10 09:54:35 -04:00
nfs4xdr_gen.c xdrgen: Emit a blank line ahead of enum declarations 2026-08-10 09:54:35 -04:00
nfs4xdr_gen.h xdrgen: Emit a blank line ahead of enum declarations 2026-08-10 09:54:35 -04:00
nfs4xdr.c NFSD: Relocate NFSv4 "supported attributes" to new header 2026-08-10 09:54:35 -04:00
nfscache.c NFSD: Fix off-by-one in DRC bucket pruning limit 2026-08-10 09:54:35 -04:00
nfsctl.c nfsd: export NFSv4 callback op stats via netlink 2026-08-10 09:54:35 -04:00
nfsd.h NFSD: Relocate NFSv4 "supported attributes" to new header 2026-08-10 09:54:35 -04:00
nfsfh.c NFSD: include "netns.h" 2026-08-10 09:54:35 -04:00
nfsfh.h nfsd: allow encoding a filehandle into fattr4 without a svc_fh 2026-08-10 09:54:35 -04:00
nfsproc.c sunrpc: remove unused svc_version vs_count field 2026-08-10 09:54:35 -04:00
nfssvc.c sunrpc: derive the pool count instead of caching it in sv_nrpools 2026-08-10 09:54:35 -04:00
nfsxdr.c NFSD: include "netns.h" 2026-08-10 09:54:35 -04:00
pnfs.h NFSD: Enforce timeout on layout recall and integrate lease manager fencing 2026-03-29 21:25:09 -04:00
state.h NFSD: include "netns.h" 2026-08-10 09:54:35 -04:00
stats.c nfsd: count NFSv4 callback operations per netns 2026-08-10 09:54:35 -04:00
stats.h nfsd: count NFSv4 callback operations per netns 2026-08-10 09:54:35 -04:00
trace.c NFSD: Add SPDX header for fs/nfsd/trace.c 2020-11-30 13:00:24 -05:00
trace.h NFSD: include "netns.h" 2026-08-10 09:54:35 -04:00
vfs.c NFSD: include "netns.h" 2026-08-10 09:54:35 -04:00
vfs.h NFSD: Move struct readdir_cd 2026-08-10 09:54:35 -04:00
xdr.h NFSD: Move struct readdir_cd 2026-08-10 09:54:35 -04:00
xdr3.h NFSD: Move struct readdir_cd 2026-08-10 09:54:35 -04:00
xdr4.h NFSD: Move struct readdir_cd 2026-08-10 09:54:35 -04:00
xdr4cb.h nfsd: add callback encoding and decoding linkages for CB_NOTIFY 2026-08-10 09:54:35 -04:00