Here are patches to make AF_KCM handle the MSG_SPLICE_PAGES internal sendmsg flag. MSG_SPLICE_PAGES is an internal hint that tells the protocol that it should splice the pages supplied if it can. Its sendpage implementation is then turned into a wrapper around that. Does anyone actually use AF_KCM? Upstream it has some issues. It doesn't seem able to handle a "message" longer than 113920 bytes without jamming and doesn't handle the client termination once it is jammed. I've pushed the patches here also: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=sendpage-2-kcm David ver #2) - In kcm_sendpage(), only account the amount actually copied. - Wrap at 80 chars. Link: https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=51c78a4d532efe9543a4df019ff405f05c6157f6 # part 1 Link: https://lore.kernel.org/r/20230524144923.3623536-1-dhowells@xxxxxxxxxx/ # v1 David Howells (2): kcm: Support MSG_SPLICE_PAGES kcm: Convert kcm_sendpage() to use MSG_SPLICE_PAGES net/kcm/kcmsock.c | 218 ++++++++++++---------------------------------- 1 file changed, 58 insertions(+), 160 deletions(-)