Lines Matching refs:recv
470 if (!transport->recv.copied) { in xs_read_header()
471 if (buf->head[0].iov_len >= transport->recv.offset) in xs_read_header()
473 &transport->recv.xid, in xs_read_header()
474 transport->recv.offset); in xs_read_header()
475 transport->recv.copied = transport->recv.offset; in xs_read_header()
482 return transport->recv.fraghdr & cpu_to_be32(RPC_LAST_STREAM_FRAGMENT); in xs_read_stream_request_done()
503 want = transport->recv.len - transport->recv.offset; in xs_read_stream_request()
506 transport->recv.copied + want, in xs_read_stream_request()
507 transport->recv.copied, in xs_read_stream_request()
509 transport->recv.offset += read; in xs_read_stream_request()
510 transport->recv.copied += read; in xs_read_stream_request()
513 if (transport->recv.offset == transport->recv.len) in xs_read_stream_request()
545 .iov_base = &transport->recv.fraghdr, in xs_read_stream_header()
560 req = xprt_lookup_bc_request(xprt, transport->recv.xid); in xs_read_stream_call()
565 if (transport->recv.copied && !req->rq_private_buf.len) in xs_read_stream_call()
570 xprt_complete_bc_request(req, transport->recv.copied); in xs_read_stream_call()
572 req->rq_private_buf.len = transport->recv.copied; in xs_read_stream_call()
593 req = xprt_lookup_rqst(xprt, transport->recv.xid); in xs_read_stream_reply()
594 if (!req || (transport->recv.copied && !req->rq_private_buf.len)) { in xs_read_stream_reply()
605 xprt_complete_rqst(req->rq_task, transport->recv.copied); in xs_read_stream_reply()
607 req->rq_private_buf.len = transport->recv.copied; in xs_read_stream_reply()
621 if (transport->recv.len == 0) { in xs_read_stream()
622 want = xs_read_stream_headersize(transport->recv.copied != 0); in xs_read_stream()
624 transport->recv.offset); in xs_read_stream()
627 transport->recv.offset = ret; in xs_read_stream()
628 if (transport->recv.offset != want) in xs_read_stream()
629 return transport->recv.offset; in xs_read_stream()
630 transport->recv.len = be32_to_cpu(transport->recv.fraghdr) & in xs_read_stream()
632 transport->recv.offset -= sizeof(transport->recv.fraghdr); in xs_read_stream()
636 switch (be32_to_cpu(transport->recv.calldir)) { in xs_read_stream()
647 transport->recv.calldir = cpu_to_be32(-1); in xs_read_stream()
648 transport->recv.copied = -1; in xs_read_stream()
653 if (transport->recv.offset < transport->recv.len) { in xs_read_stream()
658 transport->recv.len - transport->recv.offset); in xs_read_stream()
661 transport->recv.offset += ret; in xs_read_stream()
663 if (transport->recv.offset != transport->recv.len) in xs_read_stream()
668 transport->recv.copied = 0; in xs_read_stream()
670 transport->recv.offset = 0; in xs_read_stream()
671 transport->recv.len = 0; in xs_read_stream()
737 transport->recv.offset = 0; in xs_stream_reset_connect()
738 transport->recv.len = 0; in xs_stream_reset_connect()
739 transport->recv.copied = 0; in xs_stream_reset_connect()