diff options
Diffstat (limited to 'net/sunrpc/svcsock.c')
| -rw-r--r-- | net/sunrpc/svcsock.c | 14 | 
1 files changed, 2 insertions, 12 deletions
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c index 998687421fa6..bfb2f78523a8 100644 --- a/net/sunrpc/svcsock.c +++ b/net/sunrpc/svcsock.c @@ -1049,18 +1049,14 @@ static int receive_cb_reply(struct svc_sock *svsk, struct svc_rqst *rqstp)  	struct rpc_rqst *req = NULL;  	struct kvec *src, *dst;  	__be32 *p = (__be32 *)rqstp->rq_arg.head[0].iov_base; -	__be32 xid; -	__be32 calldir; - -	xid = *p++; -	calldir = *p; +	__be32 xid = *p;  	if (!bc_xprt)  		return -EAGAIN;  	spin_lock(&bc_xprt->queue_lock);  	req = xprt_lookup_rqst(bc_xprt, xid);  	if (!req) -		goto unlock_notfound; +		goto unlock_eagain;  	memcpy(&req->rq_private_buf, &req->rq_rcv_buf, sizeof(struct xdr_buf));  	/* @@ -1077,12 +1073,6 @@ static int receive_cb_reply(struct svc_sock *svsk, struct svc_rqst *rqstp)  	rqstp->rq_arg.len = 0;  	spin_unlock(&bc_xprt->queue_lock);  	return 0; -unlock_notfound: -	printk(KERN_NOTICE -		"%s: Got unrecognized reply: " -		"calldir 0x%x xpt_bc_xprt %p xid %08x\n", -		__func__, ntohl(calldir), -		bc_xprt, ntohl(xid));  unlock_eagain:  	spin_unlock(&bc_xprt->queue_lock);  	return -EAGAIN;  |