[PATCH 0/8] nfsd: CB_SEQUENCE error handling fixes and cleanups

Jeff Layton
2025-01-23T20:25:35Z

The first four patches fix bugs in the CB_SEQUENCE error handling. The
last patches are cleanups.

These are only lightly tested, mostly because we don't have a great way
to test backchannel error handling. I tried to keep these very small so
that we could bisect if there are problems.

These should probably go in via Chuck's tree, but the last patch touches
some NFS client code, so it'd be good to have R-b's or A-b's from Trond
and/or Anna on that one.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
---
Jeff Layton (8):
nfsd: don't restart v4.1+ callback when RPC_SIGNALLED is set
nfsd: fix CB_SEQUENCE error handling of NFS4ERR_{BADSLOT,BADSESSION,SEQ_MISORDERED}
nfsd: when CB_SEQUENCE gets NFS4ERR_DELAY, release the slot
nfsd: fix default case in nfsd4_cb_sequence_done()
nfsd: reverse default of "ret" variable in nfsd4_cb_sequence_done()
nfsd: remove unneeded forward declaration of nfsd4_mark_cb_fault()
nfsd: clean up and amend comments around nfsd4_cb_sequence_done()
sunrpc: make rpc_restart_call() and rpc_restart_call_prepare() void return

fs/nfs/nfs4proc.c | 12 ++++----
fs/nfsd/nfs4callback.c | 69 +++++++++++++++++++++++----------------------
include/linux/sunrpc/clnt.h | 4 +--
net/sunrpc/clnt.c | 7 ++---
4 files changed, 45 insertions(+), 47 deletions(-)
---
base-commit: 0ab8e05a5a694a1e4c6854a98f08a477d16b6aeb
change-id: 20250123-nfsd-6-14-b0797e385dc0

Best regards,
--
Jeff Layton <jlayton@kernel.org>