linux-xiaomi-chiron/include/linux/sunrpc
Chuck Lever ca07eda33e SUNRPC: Refactor svc_recvfrom()
This function is not currently "generic" so remove the documenting
comment and rename it appropriately. Its internals are converted to
use bio_vecs for reading from the transport socket.

In existing typical sunrpc uses of bio_vecs, the bio_vec array is
allocated dynamically. Here, instead, an array of bio_vecs is added
to svc_rqst. The lifetime of this array can be greater than one call
to xpo_recvfrom():

- Multiple calls to xpo_recvfrom() might be needed to read an RPC
  message completely.

- At some later point, rq_arg.bvecs will point to this array and it
  will carry the received message into svc_process().

I also expect that a future optimization will remove either the
rq_vec or rq_pages array in favor of rq_bvec, thus conserving the
size of struct svc_rqst.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
2020-05-20 17:30:12 -04:00
..
addr.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
auth.h SUNRPC: Remove broken gss_mech_list_pseudoflavors() 2020-01-15 10:54:32 -05:00
auth_gss.h sunrpc: remove __KERNEL__ ifdefs 2019-11-12 11:43:29 -05:00
bc_xprt.h SUNRPC: Destroy the back channel when we destroy the host transport 2019-10-30 12:04:35 -04:00
cache.h SUNRPC/cache: don't allow invalid entries to be flushed 2020-03-27 12:17:31 -04:00
clnt.h NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION 2020-04-28 15:58:38 -04:00
debug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
gss_api.h SUNRPC: Fix GSS privacy computation of auth->au_ralign 2020-04-27 10:58:30 -04:00
gss_asn1.h
gss_err.h sunrpc: remove __KERNEL__ ifdefs 2019-11-12 11:43:29 -05:00
gss_krb5.h SUNRPC: Add "@len" parameter to gss_unwrap() 2020-04-27 10:58:30 -04:00
gss_krb5_enctypes.h SUNRPC: Add build option to disable support for insecure enctypes 2019-02-13 13:33:12 -05:00
metrics.h SUNRPC: Count ops completing with tk_status < 0 2019-07-06 14:54:51 -04:00
msg_prot.h sunrpc: remove __KERNEL__ ifdefs 2019-11-12 11:43:29 -05:00
rpc_pipe_fs.h sunrpc: remove __KERNEL__ ifdefs 2019-11-12 11:43:29 -05:00
rpc_rdma.h svcrdma: Use struct xdr_stream to decode ingress transport headers 2020-03-16 12:04:32 -04:00
sched.h SUNRPC: Add a flag to avoid reference counts on credentials 2020-03-16 08:34:28 -04:00
stats.h proc: convert everything to "struct proc_ops" 2020-02-04 03:05:26 +00:00
svc.h SUNRPC: Refactor svc_recvfrom() 2020-05-20 17:30:12 -04:00
svc_rdma.h svcrdma: Remove the SVCRDMA_DEBUG macro 2020-05-18 10:21:22 -04:00
svc_xprt.h SUNRPC: Move xpt_mutex into socket xpo_sendto methods 2020-05-18 10:21:21 -04:00
svcauth.h sunrpc: remove __KERNEL__ ifdefs 2019-11-12 11:43:29 -05:00
svcauth_gss.h sunrpc: remove __KERNEL__ ifdefs 2019-11-12 11:43:29 -05:00
svcsock.h SUNRPC: Rename svc_sock::sk_reclen 2020-05-18 10:21:23 -04:00
timer.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
types.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
xdr.h SUNRPC: Revert 241b1f419f ("SUNRPC: Remove xdr_buf_trim()") 2020-04-27 10:58:30 -04:00
xprt.h This is a relatively quiet cycle for nfsd, mainly various bugfixes. 2019-12-07 16:56:00 -08:00
xprtmultipath.h SUNRPC: Add basic load balancing to the transport switch 2019-07-06 14:54:49 -04:00
xprtrdma.h xprtrdma: Boost client's max slot table size to match Linux server 2019-08-20 11:17:16 -04:00
xprtsock.h This is a relatively quiet cycle for nfsd, mainly various bugfixes. 2019-12-07 16:56:00 -08:00