From: Jeff Layton <jlayton@kernel.org>
To: Chuck Lever <chuck.lever@oracle.com>, Neil Brown <neilb@suse.de>,
Olga Kornievskaia <kolga@netapp.com>,
Dai Ngo <Dai.Ngo@oracle.com>, Tom Talpey <tom@talpey.com>,
Trond Myklebust <trondmy@kernel.org>,
Anna Schumaker <anna@kernel.org>
Cc: Tom Haynes <loghyr@gmail.com>,
linux-kernel@vger.kernel.org, linux-nfs@vger.kernel.org,
Jeff Layton <jlayton@kernel.org>
Subject: [PATCH 0/3] nfsd: implement OPEN_XOR_DELEGATION part of delstid draft
Date: Fri, 16 Aug 2024 08:42:06 -0400 [thread overview]
Message-ID: <20240816-delstid-v1-0-c221c3dc14cd@kernel.org> (raw)
This adds support for part of the "delstid" draft:
https://datatracker.ietf.org/doc/draft-ietf-nfsv4-delstid/05/
Specifically, this adds support for the OPEN_XOR_DELEGATION part of the
draft. That allows the client to avoid issuing CLOSE compounds when it
holds a delegation.
For the XDR handling, I used Chuck's new lkxdrgen tool to generate the
relevant boilerplate, and then hand tweaked it in places to work around
bugs in the decoder, naming conflicts, etc.
I've left the encoders and decoders for the delegated timestamp handling
in the XDR patch, but I'm still studying that piece and it isn't
implemented yet. That may require some timestamp handling surgery at the
VFS layer. I think it's doable and may actually be simpler to implement
on top of the multigrain work.
Signed-off-by: Jeff Layton <jlayton@kernel.org>
---
Jeff Layton (3):
nfsd: bring in support for delstid draft XDR encoding
nfsd: add support for FATTR4_OPEN_ARGUMENTS
nfsd: implement OPEN_ARGS_SHARE_ACCESS_WANT_OPEN_XOR_DELEGATION
fs/nfsd/Makefile | 2 +-
fs/nfsd/delstid_xdr.c | 464 ++++++++++++++++++++++++++++++++++++++++++++++
fs/nfsd/delstid_xdr.h | 105 +++++++++++
fs/nfsd/nfs4state.c | 29 ++-
fs/nfsd/nfs4xdr.c | 57 +++++-
fs/nfsd/nfsd.h | 3 +-
include/uapi/linux/nfs4.h | 7 +-
7 files changed, 658 insertions(+), 9 deletions(-)
---
base-commit: 6d0cd2727ed2cf725b1f20dc4e2d0d138c1cf117
change-id: 20240815-delstid-93290691ad11
Best regards,
--
Jeff Layton <jlayton@kernel.org>
next reply other threads:[~2024-08-16 12:42 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-16 12:42 Jeff Layton [this message]
2024-08-16 12:42 ` [PATCH 1/3] nfsd: bring in support for delstid draft XDR encoding Jeff Layton
2024-08-16 15:17 ` Chuck Lever
2024-08-16 15:45 ` Jeff Layton
2024-08-16 16:16 ` Chuck Lever
2024-08-16 16:34 ` Jeff Layton
2024-08-19 0:04 ` NeilBrown
2024-08-19 11:44 ` Jeff Layton
2024-08-19 13:21 ` Chuck Lever III
2024-08-19 13:26 ` Jeff Layton
2024-08-19 13:28 ` Chuck Lever III
2024-08-19 19:50 ` Chuck Lever III
2024-08-19 20:04 ` Jeff Layton
2024-08-19 23:16 ` Chuck Lever III
2024-08-20 12:18 ` Jeff Layton
2024-08-16 12:42 ` [PATCH 2/3] nfsd: add support for FATTR4_OPEN_ARGUMENTS Jeff Layton
2024-08-16 12:42 ` [PATCH 3/3] nfsd: implement OPEN_ARGS_SHARE_ACCESS_WANT_OPEN_XOR_DELEGATION Jeff Layton
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=20240816-delstid-v1-0-c221c3dc14cd@kernel.org \
--to=jlayton@kernel.org \
--cc=Dai.Ngo@oracle.com \
--cc=anna@kernel.org \
--cc=chuck.lever@oracle.com \
--cc=kolga@netapp.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=loghyr@gmail.com \
--cc=neilb@suse.de \
--cc=tom@talpey.com \
--cc=trondmy@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox