Lines Matching full:dr
535 static void free_deferred(struct svc_xprt *xprt, struct svc_deferred_req *dr) in free_deferred() argument
537 if (!dr) in free_deferred()
540 xprt->xpt_ops->xpo_release_ctxt(xprt, dr->xprt_ctxt); in free_deferred()
541 kfree(dr); in free_deferred()
1030 struct svc_deferred_req *dr; in svc_delete_xprt() local
1046 while ((dr = svc_deferred_dequeue(xprt)) != NULL) in svc_delete_xprt()
1047 free_deferred(xprt, dr); in svc_delete_xprt()
1150 struct svc_deferred_req *dr = in svc_revisit() local
1152 struct svc_xprt *xprt = dr->xprt; in svc_revisit()
1158 trace_svc_defer_drop(dr); in svc_revisit()
1159 free_deferred(xprt, dr); in svc_revisit()
1163 dr->xprt = NULL; in svc_revisit()
1164 list_add(&dr->handle.recent, &xprt->xpt_deferred); in svc_revisit()
1166 trace_svc_defer_queue(dr); in svc_revisit()
1183 struct svc_deferred_req *dr; in svc_defer() local
1188 dr = rqstp->rq_deferred; in svc_defer()
1195 dr = kmalloc(size, GFP_KERNEL); in svc_defer()
1196 if (dr == NULL) in svc_defer()
1199 dr->handle.owner = rqstp->rq_server; in svc_defer()
1200 dr->prot = rqstp->rq_prot; in svc_defer()
1201 memcpy(&dr->addr, &rqstp->rq_addr, rqstp->rq_addrlen); in svc_defer()
1202 dr->addrlen = rqstp->rq_addrlen; in svc_defer()
1203 dr->daddr = rqstp->rq_daddr; in svc_defer()
1204 dr->argslen = rqstp->rq_arg.len >> 2; in svc_defer()
1208 memcpy(dr->args, rqstp->rq_arg.head[0].iov_base - skip, in svc_defer()
1209 dr->argslen << 2); in svc_defer()
1211 dr->xprt_ctxt = rqstp->rq_xprt_ctxt; in svc_defer()
1215 dr->xprt = rqstp->rq_xprt; in svc_defer()
1218 dr->handle.revisit = svc_revisit; in svc_defer()
1219 return &dr->handle; in svc_defer()
1227 struct svc_deferred_req *dr = rqstp->rq_deferred; in svc_deferred_recv() local
1229 trace_svc_defer_recv(dr); in svc_deferred_recv()
1232 rqstp->rq_arg.head[0].iov_base = dr->args; in svc_deferred_recv()
1234 rqstp->rq_arg.head[0].iov_len = dr->argslen << 2; in svc_deferred_recv()
1237 rqstp->rq_arg.len = dr->argslen << 2; in svc_deferred_recv()
1238 rqstp->rq_prot = dr->prot; in svc_deferred_recv()
1239 memcpy(&rqstp->rq_addr, &dr->addr, dr->addrlen); in svc_deferred_recv()
1240 rqstp->rq_addrlen = dr->addrlen; in svc_deferred_recv()
1242 rqstp->rq_daddr = dr->daddr; in svc_deferred_recv()
1244 rqstp->rq_xprt_ctxt = dr->xprt_ctxt; in svc_deferred_recv()
1246 dr->xprt_ctxt = NULL; in svc_deferred_recv()
1248 return dr->argslen << 2; in svc_deferred_recv()
1254 struct svc_deferred_req *dr = NULL; in svc_deferred_dequeue() local
1260 dr = list_entry(xprt->xpt_deferred.next, in svc_deferred_dequeue()
1263 list_del_init(&dr->handle.recent); in svc_deferred_dequeue()
1267 return dr; in svc_deferred_dequeue()