nfsd4_open() sets NFS4_OO_CONFIRMED on the openowner before calling do_open_fhandle(), which can fail. If it fails, the openowner stays permanently confirmed despite the OPEN failing. The correct success-path setter already exists in init_open_stateid(). Remove the premature setter. NFSv4.1+ is unaffected as sessions always confirm at creation time. Fixes: a525825df152 ("[PATCH] nfsd4: handle replays of failed open reclaims") Assisted-by: Claude:claude-opus-4-8 Signed-off-by: Jeff Layton --- fs/nfsd/nfs4proc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c index 69fee481581d..4fe46996c8ed 100644 --- a/fs/nfsd/nfs4proc.c +++ b/fs/nfsd/nfs4proc.c @@ -643,7 +643,6 @@ nfsd4_open(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, status = nfs4_check_open_reclaim(cstate->clp); if (status) goto out; - open->op_openowner->oo_flags |= NFS4_OO_CONFIRMED; reclaim = true; fallthrough; case NFS4_OPEN_CLAIM_FH: -- 2.54.0