forked from luck/tmp_suning_uos_patched
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
db82bb6054
commit
208ff79675
|
@ -1156,6 +1156,7 @@ nfsd_commit(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
||||||
nfsd_net_id));
|
nfsd_net_id));
|
||||||
err2 = filemap_check_wb_err(nf->nf_file->f_mapping,
|
err2 = filemap_check_wb_err(nf->nf_file->f_mapping,
|
||||||
since);
|
since);
|
||||||
|
err = nfserrno(err2);
|
||||||
break;
|
break;
|
||||||
case -EINVAL:
|
case -EINVAL:
|
||||||
err = nfserr_notsupp;
|
err = nfserr_notsupp;
|
||||||
|
@ -1163,8 +1164,8 @@ nfsd_commit(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
||||||
default:
|
default:
|
||||||
nfsd_reset_boot_verifier(net_generic(nf->nf_net,
|
nfsd_reset_boot_verifier(net_generic(nf->nf_net,
|
||||||
nfsd_net_id));
|
nfsd_net_id));
|
||||||
|
err = nfserrno(err2);
|
||||||
}
|
}
|
||||||
err = nfserrno(err2);
|
|
||||||
} else
|
} else
|
||||||
nfsd_copy_boot_verifier(verf, net_generic(nf->nf_net,
|
nfsd_copy_boot_verifier(verf, net_generic(nf->nf_net,
|
||||||
nfsd_net_id));
|
nfsd_net_id));
|
||||||
|
|
Loading…
Reference in New Issue
Block a user