From: "J. Bruce Fields" <bfields@fieldses.org>

svc_recv may call svc_sock_release before rqstp->rq_res is initialized.


---

 25-akpm/net/sunrpc/svcsock.c |    1 +
 1 files changed, 1 insertion(+)

diff -puN net/sunrpc/svcsock.c~svc_recv-fix net/sunrpc/svcsock.c
--- 25/net/sunrpc/svcsock.c~svc_recv-fix	Tue May 18 16:46:19 2004
+++ 25-akpm/net/sunrpc/svcsock.c	Tue May 18 16:46:19 2004
@@ -1255,6 +1255,7 @@ svc_recv(struct svc_serv *serv, struct s
 
 	/* No data, incomplete (TCP) read, or accept() */
 	if (len == 0 || len == -EAGAIN) {
+		rqstp->rq_res.len = 0;
 		svc_sock_release(rqstp);
 		return -EAGAIN;
 	}

_