[net-next,v2,0/2] splice, net: Handle MSG_SPLICE_PAGES in AF_KCM

Message ID 20230531110423.643196-1-dhowells@redhat.com
Headers
Series splice, net: Handle MSG_SPLICE_PAGES in AF_KCM |

Message

David Howells May 31, 2023, 11:04 a.m. UTC
  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@redhat.com/ # 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(-)
  

Comments

patchwork-bot+netdevbpf@kernel.org June 6, 2023, 4:10 a.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Wed, 31 May 2023 12:04:20 +0100 you wrote:
> 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.
> 
> [...]

Here is the summary with links:
  - [net-next,v2,1/2] kcm: Support MSG_SPLICE_PAGES
    https://git.kernel.org/netdev/net-next/c/2b03bcae66c7
  - [net-next,v2,2/2] kcm: Convert kcm_sendpage() to use MSG_SPLICE_PAGES
    https://git.kernel.org/netdev/net-next/c/5bb3a5cb3e21

You are awesome, thank you!