diff options
-rw-r--r-- | include/linux/sunrpc/svc.h | 1 | ||||
-rw-r--r-- | net/sunrpc/svcsock.c | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/sunrpc/svc.h b/include/linux/sunrpc/svc.h index e4086ec8b952..50cab2a09f28 100644 --- a/include/linux/sunrpc/svc.h +++ b/include/linux/sunrpc/svc.h | |||
@@ -246,6 +246,7 @@ struct svc_deferred_req { | |||
246 | u32 prot; /* protocol (UDP or TCP) */ | 246 | u32 prot; /* protocol (UDP or TCP) */ |
247 | struct sockaddr_in addr; | 247 | struct sockaddr_in addr; |
248 | struct svc_sock *svsk; /* where reply must go */ | 248 | struct svc_sock *svsk; /* where reply must go */ |
249 | u32 daddr; /* where reply must come from */ | ||
249 | struct cache_deferred_req handle; | 250 | struct cache_deferred_req handle; |
250 | int argslen; | 251 | int argslen; |
251 | u32 args[0]; | 252 | u32 args[0]; |
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c index e67613e4eb18..50580620e897 100644 --- a/net/sunrpc/svcsock.c +++ b/net/sunrpc/svcsock.c | |||
@@ -1527,6 +1527,7 @@ svc_defer(struct cache_req *req) | |||
1527 | dr->handle.owner = rqstp->rq_server; | 1527 | dr->handle.owner = rqstp->rq_server; |
1528 | dr->prot = rqstp->rq_prot; | 1528 | dr->prot = rqstp->rq_prot; |
1529 | dr->addr = rqstp->rq_addr; | 1529 | dr->addr = rqstp->rq_addr; |
1530 | dr->daddr = rqstp->rq_daddr; | ||
1530 | dr->argslen = rqstp->rq_arg.len >> 2; | 1531 | dr->argslen = rqstp->rq_arg.len >> 2; |
1531 | memcpy(dr->args, rqstp->rq_arg.head[0].iov_base-skip, dr->argslen<<2); | 1532 | memcpy(dr->args, rqstp->rq_arg.head[0].iov_base-skip, dr->argslen<<2); |
1532 | } | 1533 | } |
@@ -1552,6 +1553,7 @@ static int svc_deferred_recv(struct svc_rqst *rqstp) | |||
1552 | rqstp->rq_arg.len = dr->argslen<<2; | 1553 | rqstp->rq_arg.len = dr->argslen<<2; |
1553 | rqstp->rq_prot = dr->prot; | 1554 | rqstp->rq_prot = dr->prot; |
1554 | rqstp->rq_addr = dr->addr; | 1555 | rqstp->rq_addr = dr->addr; |
1556 | rqstp->rq_daddr = dr->daddr; | ||
1555 | return dr->argslen<<2; | 1557 | return dr->argslen<<2; |
1556 | } | 1558 | } |
1557 | 1559 | ||