/net/sunrpc/ |
D | svc.c | 567 svc_init_buffer(struct svc_rqst *rqstp, unsigned int size, int node) in svc_init_buffer() argument 572 if (svc_is_backchannel(rqstp)) in svc_init_buffer() 586 rqstp->rq_pages[arghi++] = p; in svc_init_buffer() 596 svc_release_buffer(struct svc_rqst *rqstp) in svc_release_buffer() argument 600 for (i = 0; i < ARRAY_SIZE(rqstp->rq_pages); i++) in svc_release_buffer() 601 if (rqstp->rq_pages[i]) in svc_release_buffer() 602 put_page(rqstp->rq_pages[i]); in svc_release_buffer() 608 struct svc_rqst *rqstp; in svc_rqst_alloc() local 610 rqstp = kzalloc_node(sizeof(*rqstp), GFP_KERNEL, node); in svc_rqst_alloc() 611 if (!rqstp) in svc_rqst_alloc() [all …]
|
D | svc_xprt.c | 30 static int svc_deferred_recv(struct svc_rqst *rqstp); 344 void svc_xprt_copy_addrs(struct svc_rqst *rqstp, struct svc_xprt *xprt) in svc_xprt_copy_addrs() argument 346 memcpy(&rqstp->rq_addr, &xprt->xpt_remote, xprt->xpt_remotelen); in svc_xprt_copy_addrs() 347 rqstp->rq_addrlen = xprt->xpt_remotelen; in svc_xprt_copy_addrs() 353 memcpy(&rqstp->rq_daddr, &xprt->xpt_local, xprt->xpt_locallen); in svc_xprt_copy_addrs() 354 rqstp->rq_daddrlen = xprt->xpt_locallen; in svc_xprt_copy_addrs() 365 char *svc_print_addr(struct svc_rqst *rqstp, char *buf, size_t len) in svc_print_addr() argument 367 return __svc_print_addr(svc_addr(rqstp), buf, len); in svc_print_addr() 379 static bool svc_xprt_reserve_slot(struct svc_rqst *rqstp, struct svc_xprt *xprt) in svc_xprt_reserve_slot() argument 381 if (!test_bit(RQ_DATA, &rqstp->rq_flags)) { in svc_xprt_reserve_slot() [all …]
|
D | svcsock.c | 144 static void svc_set_cmsg_data(struct svc_rqst *rqstp, struct cmsghdr *cmh) in svc_set_cmsg_data() argument 147 container_of(rqstp->rq_xprt, struct svc_sock, sk_xprt); in svc_set_cmsg_data() 156 svc_daddr_in(rqstp)->sin_addr.s_addr; in svc_set_cmsg_data() 163 struct sockaddr_in6 *daddr = svc_daddr_in6(rqstp); in svc_set_cmsg_data() 175 static int svc_sock_result_payload(struct svc_rqst *rqstp, unsigned int offset, in svc_sock_result_payload() argument 242 static ssize_t svc_tcp_read_msg(struct svc_rqst *rqstp, size_t buflen, in svc_tcp_read_msg() argument 246 container_of(rqstp->rq_xprt, struct svc_sock, sk_xprt); in svc_tcp_read_msg() 247 struct bio_vec *bvec = rqstp->rq_bvec; in svc_tcp_read_msg() 256 bvec[i].bv_page = rqstp->rq_pages[i]; in svc_tcp_read_msg() 260 rqstp->rq_respages = &rqstp->rq_pages[i]; in svc_tcp_read_msg() [all …]
|
D | svcauth_unix.c | 640 static struct group_info *unix_gid_find(kuid_t uid, struct svc_rqst *rqstp) in unix_gid_find() argument 645 struct sunrpc_net *sn = net_generic(rqstp->rq_xprt->xpt_net, in unix_gid_find() 651 ret = cache_check(sn->unix_gid_cache, &ug->h, &rqstp->rq_chandle); in unix_gid_find() 667 svcauth_unix_set_client(struct svc_rqst *rqstp) in svcauth_unix_set_client() argument 673 struct svc_cred *cred = &rqstp->rq_cred; in svcauth_unix_set_client() 674 struct svc_xprt *xprt = rqstp->rq_xprt; in svcauth_unix_set_client() 678 switch (rqstp->rq_addr.ss_family) { in svcauth_unix_set_client() 680 sin = svc_addr_in(rqstp); in svcauth_unix_set_client() 685 sin6 = svc_addr_in6(rqstp); in svcauth_unix_set_client() 691 rqstp->rq_client = NULL; in svcauth_unix_set_client() [all …]
|
D | svcauth.c | 62 svc_authenticate(struct svc_rqst *rqstp) in svc_authenticate() argument 67 rqstp->rq_auth_stat = rpc_auth_ok; in svc_authenticate() 69 flavor = svc_getnl(&rqstp->rq_arg.head[0]); in svc_authenticate() 75 rqstp->rq_auth_stat = rpc_autherr_badcred; in svc_authenticate() 79 rqstp->rq_auth_slack = 0; in svc_authenticate() 80 init_svc_cred(&rqstp->rq_cred); in svc_authenticate() 82 rqstp->rq_authop = aops; in svc_authenticate() 83 return aops->accept(rqstp); in svc_authenticate() 87 int svc_set_client(struct svc_rqst *rqstp) in svc_set_client() argument 89 rqstp->rq_client = NULL; in svc_set_client() [all …]
|
D | cache.c | 297 struct cache_head *h, struct cache_req *rqstp) in cache_check() argument 309 if (rqstp == NULL) { in cache_check() 327 if (!cache_defer_req(rqstp, h)) { in cache_check()
|
D | clnt.c | 2699 static void rpcproc_encode_null(struct rpc_rqst *rqstp, struct xdr_stream *xdr, in rpcproc_encode_null() argument 2704 static int rpcproc_decode_null(struct rpc_rqst *rqstp, struct xdr_stream *xdr, in rpcproc_decode_null() argument
|
/net/sunrpc/auth_gss/ |
D | svcauth_gss.c | 631 static bool gss_check_seq_num(const struct svc_rqst *rqstp, struct rsc *rsci, in gss_check_seq_num() argument 661 trace_rpcgss_svc_seqno_low(rqstp, seq_num, in gss_check_seq_num() 666 trace_rpcgss_svc_seqno_seen(rqstp, seq_num); in gss_check_seq_num() 715 gss_verify_header(struct svc_rqst *rqstp, struct rsc *rsci, in gss_verify_header() argument 722 struct kvec *argv = &rqstp->rq_arg.head[0]; in gss_verify_header() 730 rqstp->rq_auth_stat = rpc_autherr_badverf; in gss_verify_header() 739 if (rqstp->rq_deferred) /* skip verification of revisited request */ in gss_verify_header() 742 rqstp->rq_auth_stat = rpcsec_gsserr_credproblem; in gss_verify_header() 747 trace_rpcgss_svc_seqno_large(rqstp, gc->gc_seq); in gss_verify_header() 748 rqstp->rq_auth_stat = rpcsec_gsserr_ctxproblem; in gss_verify_header() [all …]
|
D | auth_gss.c | 1723 struct rpc_rqst *rqstp = task->tk_rqstp; in gss_wrap_req_integ() local 1724 struct xdr_buf integ_buf, *snd_buf = &rqstp->rq_snd_buf; in gss_wrap_req_integ() 1733 *p = cpu_to_be32(rqstp->rq_seqno); in gss_wrap_req_integ() 1765 priv_release_snd_buf(struct rpc_rqst *rqstp) in priv_release_snd_buf() argument 1769 for (i=0; i < rqstp->rq_enc_pages_num; i++) in priv_release_snd_buf() 1770 __free_page(rqstp->rq_enc_pages[i]); in priv_release_snd_buf() 1771 kfree(rqstp->rq_enc_pages); in priv_release_snd_buf() 1772 rqstp->rq_release_snd_buf = NULL; in priv_release_snd_buf() 1776 alloc_enc_pages(struct rpc_rqst *rqstp) in alloc_enc_pages() argument 1778 struct xdr_buf *snd_buf = &rqstp->rq_snd_buf; in alloc_enc_pages() [all …]
|
D | gss_rpc_xdr.h | 170 int gssx_dec_accept_sec_context(struct rpc_rqst *rqstp,
|
D | gss_rpc_xdr.c | 779 int gssx_dec_accept_sec_context(struct rpc_rqst *rqstp, in gssx_dec_accept_sec_context() argument
|
/net/sunrpc/xprtrdma/ |
D | svc_rdma_recvfrom.c | 381 static void svc_rdma_build_arg_xdr(struct svc_rqst *rqstp, in svc_rdma_build_arg_xdr() argument 384 struct xdr_buf *arg = &rqstp->rq_arg; in svc_rdma_build_arg_xdr() 786 int svc_rdma_recvfrom(struct svc_rqst *rqstp) in svc_rdma_recvfrom() argument 788 struct svc_xprt *xprt = rqstp->rq_xprt; in svc_rdma_recvfrom() 797 rqstp->rq_respages = rqstp->rq_pages; in svc_rdma_recvfrom() 798 rqstp->rq_next_page = rqstp->rq_respages; in svc_rdma_recvfrom() 800 rqstp->rq_xprt_ctxt = NULL; in svc_rdma_recvfrom() 821 svc_rdma_build_arg_xdr(rqstp, ctxt); in svc_rdma_recvfrom() 823 ret = svc_rdma_xdr_decode_req(&rqstp->rq_arg, ctxt); in svc_rdma_recvfrom() 836 ret = svc_rdma_process_read_list(rdma_xprt, rqstp, ctxt); in svc_rdma_recvfrom() [all …]
|
D | svc_rdma_sendto.c | 815 struct svc_rqst *rqstp) in svc_rdma_send_reply_msg() argument 819 ret = svc_rdma_map_reply_msg(rdma, sctxt, rctxt, &rqstp->rq_res); in svc_rdma_send_reply_msg() 921 int svc_rdma_sendto(struct svc_rqst *rqstp) in svc_rdma_sendto() argument 923 struct svc_xprt *xprt = rqstp->rq_xprt; in svc_rdma_sendto() 926 struct svc_rdma_recv_ctxt *rctxt = rqstp->rq_xprt_ctxt; in svc_rdma_sendto() 948 ret = svc_rdma_send_reply_chunk(rdma, rctxt, &rqstp->rq_res); in svc_rdma_sendto() 968 ret = svc_rdma_send_reply_msg(rdma, sctxt, rctxt, rqstp); in svc_rdma_sendto() 975 rqstp->rq_respages++; in svc_rdma_sendto() 988 trace_svcrdma_send_err(rqstp, ret); in svc_rdma_sendto() 1008 int svc_rdma_result_payload(struct svc_rqst *rqstp, unsigned int offset, in svc_rdma_result_payload() argument [all …]
|
D | svc_rdma_rw.c | 684 struct svc_rqst *rqstp = info->ri_rqst; in svc_rdma_build_read_segment() local 705 sg_set_page(sg, rqstp->rq_pages[info->ri_pageno], in svc_rdma_build_read_segment() 718 &rqstp->rq_pages[info->ri_pageno + 1] > rqstp->rq_page_end) in svc_rdma_build_read_segment() 733 trace_svcrdma_page_overrun_err(cc->cc_rdma, rqstp, info->ri_pageno); in svc_rdma_build_read_segment() 785 struct svc_rqst *rqstp = info->ri_rqst; in svc_rdma_copy_inline_range() local 798 dst = page_address(rqstp->rq_pages[info->ri_pageno]); in svc_rdma_copy_inline_range() 1095 struct svc_rqst *rqstp, in svc_rdma_process_read_list() argument 1106 info->ri_rqst = rqstp; in svc_rdma_process_read_list() 1134 rqstp->rq_respages = &rqstp->rq_pages[head->rc_page_count]; in svc_rdma_process_read_list() 1135 rqstp->rq_next_page = rqstp->rq_respages + 1; in svc_rdma_process_read_list()
|
D | svc_rdma_backchannel.c | 19 void svc_rdma_handle_bc_reply(struct svc_rqst *rqstp, in svc_rdma_handle_bc_reply() argument 22 struct svc_xprt *sxprt = rqstp->rq_xprt; in svc_rdma_handle_bc_reply() 25 struct xdr_buf *rcvbuf = &rqstp->rq_arg; in svc_rdma_handle_bc_reply()
|
D | svc_rdma_transport.c | 603 static void svc_rdma_secure_port(struct svc_rqst *rqstp) in svc_rdma_secure_port() argument 605 set_bit(RQ_SECURE, &rqstp->rq_flags); in svc_rdma_secure_port()
|