Re: [PATCH v9 00/19] nfs/nfsd: add support for localio
From: Mike Snitzer <snitzer@kernel.org>
Date: 2024-06-29 16:03:52
On Sat, Jun 29, 2024 at 03:36:10PM +0000, Chuck Lever III wrote:
quoted
On Jun 28, 2024, at 5:10 PM, Mike Snitzer [off-list ref] wrote: Hi, I'd prefer to see these changes land upstream for 6.11 if possible. They are adequately Kconfig'd to certainly pose no risk if disabled. And even if localio enabled it has proven to work well with increased testing.Can v10 split this series into an NFS client part and an NFS server part? I will need to get the NFSD changes into nfsd-next in the next week or so to land in v6.11.
I forgot to mention this as a v9 improvement: I did split the series, but left it as one patchset. Patches 1-12 are NFS client, Patches 13-19 are NFSD. Here is the diffstat for NFS (patches 1 - 12): fs/Kconfig | 3 fs/nfs/Kconfig | 14 fs/nfs/Makefile | 1 fs/nfs/blocklayout/blocklayout.c | 6 fs/nfs/client.c | 15 fs/nfs/filelayout/filelayout.c | 16 fs/nfs/flexfilelayout/flexfilelayout.c | 131 ++++ fs/nfs/flexfilelayout/flexfilelayout.h | 2 fs/nfs/flexfilelayout/flexfilelayoutdev.c | 6 fs/nfs/inode.c | 4 fs/nfs/internal.h | 60 ++ fs/nfs/localio.c | 827 ++++++++++++++++++++++++++++++ fs/nfs/nfs4xdr.c | 13 fs/nfs/nfstrace.h | 61 ++ fs/nfs/pagelist.c | 32 - fs/nfs/pnfs.c | 24 fs/nfs/pnfs.h | 6 fs/nfs/pnfs_nfs.c | 2 fs/nfs/write.c | 13 fs/nfs_common/Makefile | 3 fs/nfs_common/nfslocalio.c | 74 ++ fs/nfsd/netns.h | 4 fs/nfsd/nfssvc.c | 12 include/linux/nfs.h | 9 include/linux/nfs_fs.h | 2 include/linux/nfs_fs_sb.h | 10 include/linux/nfs_xdr.h | 20 include/linux/nfslocalio.h | 39 + include/linux/sunrpc/auth.h | 4 net/sunrpc/auth.c | 15 net/sunrpc/clnt.c | 1 31 files changed, 1354 insertions(+), 75 deletions(-) Unfortunately there are the fs/nfsd/netns.h and fs/nfsd/nfssvc.c changes that anchor everything (patch 5). I suppose we could invert the order, such that NFSD comes before NFS changes. But then the NFS tree will need to be rebased on NFSD tree. Diffstat for NFSD (patches 13 - 19): Documentation/filesystems/nfs/localio.rst | 135 ++++++++++++ fs/nfsd/Kconfig | 14 + fs/nfsd/Makefile | 1 fs/nfsd/filecache.c | 2 fs/nfsd/localio.c | 319 ++++++++++++++++++++++++++++++ fs/nfsd/netns.h | 8 fs/nfsd/nfsctl.c | 2 fs/nfsd/nfsd.h | 2 fs/nfsd/nfssvc.c | 104 +++++++-- fs/nfsd/trace.h | 3 fs/nfsd/vfs.h | 9 include/linux/nfslocalio.h | 2 include/linux/sunrpc/svc.h | 7 net/sunrpc/svc.c | 68 +++--- net/sunrpc/svc_xprt.c | 2 net/sunrpc/svcauth_unix.c | 3 16 files changed, 621 insertions(+), 60 deletions(-) Happy to work it however you think is best.
quoted
Worked with Kent Overstreet to enable testing integration with ktest running xfstests, the dashboard is here: https://evilpiepirate.org/~testdashboard/ci?branch=snitm-nfs (it is running way more xfstests tests than is usual for nfs, would be good to reconcile that with the listing provided here: https://wiki.linux-nfs.org/wiki/index.php/Xfstests )Actually, we're using kdevops for NFSD CI testing. Any possibility that we can get some help setting that up? (It runs xfstests and several other workflows).
Sure, I can get with you off-list if that's best? I just need some pointers/access to help get it going. Thanks, Mike