NFSD: restore EINVAL error translation in nfsd_commit()
commit 8a9ffb8c857c2c99403bd6483a5a005fed5c0773 upstream. commit 555dbf1a9aac ("nfsd: Replace use of rwsem with errseq_t") incidentally broke translation of -EINVAL to nfserr_notsupp. The patch restores that. Found by Linux Verification Center (linuxtesting.org) with SVACE. Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru> Fixes: 555dbf1a9aac ("nfsd: Replace use of rwsem with errseq_t") Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
c9f8f94d3c
commit
115d941916
@ -1142,6 +1142,7 @@ nfsd_commit(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
||||
nfsd_net_id));
|
||||
err2 = filemap_check_wb_err(nf->nf_file->f_mapping,
|
||||
since);
|
||||
err = nfserrno(err2);
|
||||
break;
|
||||
case -EINVAL:
|
||||
err = nfserr_notsupp;
|
||||
@ -1149,8 +1150,8 @@ nfsd_commit(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
||||
default:
|
||||
nfsd_reset_boot_verifier(net_generic(nf->nf_net,
|
||||
nfsd_net_id));
|
||||
err = nfserrno(err2);
|
||||
}
|
||||
err = nfserrno(err2);
|
||||
} else
|
||||
nfsd_copy_boot_verifier(verf, net_generic(nf->nf_net,
|
||||
nfsd_net_id));
|
||||
|
Loading…
x
Reference in New Issue
Block a user