On 3/20/25 11:56 PM, Christoph Hellwig wrote:
I don't know the entire historical context, but I presume sendmsg did that because there was no other mechanism at the time.
At least aio had been around for about 15 years at the point, but networking folks tend to be pretty insular and reinvent things.
Yep...
It seems like Jens suggested that plumbing this through for splice was a possibility, but sounds like you disagree.
Yes, very strongly.
And that is very much not what I suggested, fwiw.
As mentioned above and in other messages, it seems like it is possible to improve the networking parts of splice (and therefore sendfile) to make them safer to use without introducing a new system call.
Are you saying that you are against doing that, even if the code is network specific (but lives in fs/)?
Yes.
Please take the work and integrate it with the kiocb-based system we use for all other in-kernel I/O that needs completion notifications and which makes it trivial to integate with io_uring instead of spreading an imcompatible and inferior event system.
Exactly, this is how we do async IO elsewhere, not sure why networking needs to be special here, and definitely not special in a good way.