nfsd: put the export reference in nfsd4_verify_deleg_dentry
authorJeff Layton <jlayton@kernel.org>
Tue, 8 Nov 2022 16:23:11 +0000 (11:23 -0500)
committerChuck Lever <chuck.lever@oracle.com>
Tue, 8 Nov 2022 16:32:53 +0000 (11:32 -0500)
nfsd_lookup_dentry returns an export reference in addition to the dentry
ref. Ensure that we put it too.

Link: https://bugzilla.redhat.com/show_bug.cgi?id=2138866
Fixes: 876c553cb410 ("NFSD: verify the opened dentry after setting a delegation")
Reported-by: Yongcheng Yang <yoyang@redhat.com>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/nfs4state.c

index 198d7ab..4f4706f 100644 (file)
@@ -5382,6 +5382,7 @@ nfsd4_verify_deleg_dentry(struct nfsd4_open *open, struct nfs4_file *fp,
        if (err)
                return -EAGAIN;
 
+       exp_put(exp);
        dput(child);
        if (child != file_dentry(fp->fi_deleg_file->nf_file))
                return -EAGAIN;