]> git.baikalelectronics.ru Git - kernel.git/commit
rds: deliver zerocopy completion notification with data
authorSowmini Varadhan <sowmini.varadhan@oracle.com>
Tue, 27 Feb 2018 17:52:43 +0000 (09:52 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 27 Feb 2018 19:19:11 +0000 (14:19 -0500)
commitb552f8575ae204118d429c341c889cb37b727aa7
tree7eb70bb22f23c1b7edb5245e17ad0f8c81bfc333
parent9b2a254e338a4b558371b2d40bd419a6d724e309
rds: deliver zerocopy completion notification with data

This commit is an optimization over commit 7f3343e6bd47
("rds: support for zcopy completion notification") for PF_RDS sockets.

RDS applications are predominantly request-response transactions, so
it is more efficient to reduce the number of system calls and have
zerocopy completion notification delivered as ancillary data on the
POLLIN channel.

Cookies are passed up as ancillary data (at level SOL_RDS) in a
struct rds_zcopy_cookies when the returned value of recvmsg() is
greater than, or equal to, 0. A max of RDS_MAX_ZCOOKIES may be passed
with each message.

This commit removes support for zerocopy completion notification on
MSG_ERRQUEUE for PF_RDS sockets.

Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/errqueue.h
include/uapi/linux/rds.h
net/rds/af_rds.c
net/rds/message.c
net/rds/rds.h
net/rds/recv.c