]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
rxrpc: Use MSG_WAITALL to tell sendmsg() to temporarily ignore signals
authorDavid Howells <dhowells@redhat.com>
Wed, 18 Oct 2017 10:07:31 +0000 (11:07 +0100)
committerDavid Howells <dhowells@redhat.com>
Wed, 18 Oct 2017 10:43:07 +0000 (11:43 +0100)
commitbc5e3a546d553e5223851fc199e69040eb70f68b
treebbe3546b0ade86b0df03d0e5e1717985bc06f1f2
parentf4d15fb6f99af9b99f688bd87579137be44f85ee
rxrpc: Use MSG_WAITALL to tell sendmsg() to temporarily ignore signals

Make AF_RXRPC accept MSG_WAITALL as a flag to sendmsg() to tell it to
ignore signals whilst loading up the message queue, provided progress is
being made in emptying the queue at the other side.

Progress is defined as the base of the transmit window having being
advanced within 2 RTT periods.  If the period is exceeded with no progress,
sendmsg() will return anyway, indicating how much data has been copied, if
any.

Once the supplied buffer is entirely decanted, the sendmsg() will return.

Signed-off-by: David Howells <dhowells@redhat.com>
Documentation/networking/rxrpc.txt
fs/afs/rxrpc.c
net/rxrpc/sendmsg.c