nfsd: fix oops on unsupported operation
I'm hitting the BUG in nfsd4_max_reply() at fs/nfsd/nfs4proc.c:2495 when
client sends an operation the server doesn't support.
in nfsd4_max_reply() it checks for NULL rsize_bop but a non-supported
operation wouldn't have that set.
Cc: Kinglong Mee <kinglongmee@gmail.com>
Fixes: 2282cd2c05
"NFSD: Get response size before operation..."
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
23abec20aa
commit
05b7278d51
|
@ -2489,7 +2489,7 @@ bool nfsd4_spo_must_allow(struct svc_rqst *rqstp)
|
||||||
|
|
||||||
int nfsd4_max_reply(struct svc_rqst *rqstp, struct nfsd4_op *op)
|
int nfsd4_max_reply(struct svc_rqst *rqstp, struct nfsd4_op *op)
|
||||||
{
|
{
|
||||||
if (op->opnum == OP_ILLEGAL)
|
if (op->opnum == OP_ILLEGAL || op->status == nfserr_notsupp)
|
||||||
return op_encode_hdr_size * sizeof(__be32);
|
return op_encode_hdr_size * sizeof(__be32);
|
||||||
|
|
||||||
BUG_ON(OPDESC(op)->op_rsize_bop == NULL);
|
BUG_ON(OPDESC(op)->op_rsize_bop == NULL);
|
||||||
|
|
Loading…
Reference in New Issue