[PATCH net-next 0/6] splice, net: Some miscellaneous MSG_SPLICE_PAGES changes

From: David Howells
Date: Fri Jun 09 2023 - 06:14:49 EST


Now that the splice_to_socket() has been rewritten so that nothing now uses
the ->sendpage() file op[1], some further changes can be made, so here are
some miscellaneous changes that can now be done.

(1) Remove the ->sendpage() file op.

(2) Remove hash_sendpage*() from AF_ALG.

(3) Make sunrpc send multiple pages in single sendmsg() call rather than
calling sendpage() in TCP (or maybe TLS).

(4) Make tcp_bpf_sendpage() a wrapper around tcp_bpf_sendmsg().

(5) Make AF_KCM use sendmsg() when calling down to TCP and then make it
send entire fragment lists in single sendmsg calls.

I've pushed the patches here also:

https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=sendpage-3-misc

David

Link: https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=fd5f4d7da29218485153fd8b4c08da7fc130c79f [1]

David Howells (6):
Remove file->f_op->sendpage
algif: Remove hash_sendpage*()
sunrpc: Use sendmsg(MSG_SPLICE_PAGES) rather then sendpage
tcp_bpf: Make tcp_bpf_sendpage() go through
tcp_bpf_sendmsg(MSG_SPLICE_PAGES)
kcm: Use sendmsg(MSG_SPLICE_PAGES) rather then sendpage
kcm: Send multiple frags in one sendmsg()

crypto/algif_hash.c | 66 --------------------
include/linux/fs.h | 1 -
include/linux/sunrpc/svc.h | 11 ++--
include/net/kcm.h | 2 +-
net/ipv4/tcp_bpf.c | 49 +++------------
net/kcm/kcmsock.c | 120 ++++++++++++++++---------------------
net/sunrpc/svcsock.c | 38 ++++--------
7 files changed, 77 insertions(+), 210 deletions(-)