Re: [PATCH 0/3] vmsplice: make vmsplice a trivial wrapper for preadv2/pwritev2
Pedro Falcato <[email protected]>
| Newsgroups | org.kernel.vger.linux-api,dev.linux.lists.patches,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.netdev,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Jun 02, 2026 at 03:06:07PM -0700, Linus Torvalds wrote: > On Tue, 2 Jun 2026 at 14:37, Pedro Falcato <[email protected]> wrote: > > > > Well, that's most definitely part of my patch. Also, you cannot outright > > remove splice() functionality > > That isn't what Askar's patch ever did. > > You apparently didn't even read it. Well, I was replying to Askar's new idea to remove pagecache-to-pipe splice, which is what he suggested. And directly intersects with my sysctl-to-disable-splice patch. > Honestly, I think you are the one out of line here. > > Askar did something I suggested years ago, and didn't remove any functionality. > > It just changes vmsplice to be a copying model (one of the directions > already was). It doesn't change regular splice at all. > > And yes, it has the potential to be a visible behavior difference - if > some insane user uses vmsplice and then modifies the buffer > *afterwards*, then that would be semantically different between a > zero-copy and a normal copy. > > But that would be insane behavior, and was never really reliable > anyway even with zero-copy (ie subsequent writes to user space buffers > would potentially do COW breaking based purely on timing and memory > pressure etc, so anybody who relied on it being visible wasn't goign > to get it realiably anyway) > > Perhaps more importantly, it has the potential to change performance - > zero-copy *can* be a performance win, although typically it really > doesn't tend to be (looking up the page mapping is often slower than > copying). > > I would expect it to be very clear in trivial benchmarks that aren't > actually real loads. And probably not visible anywhere else. Yes, vmsplice() sucks, and we know it. Hopefully no one else will see the difference. I don't think we can say the same for splice(), though. > Trying to make it look like Askar is the problem is only making you look worse. To be clear, I don't think Askar is the (or a) problem. I'm glad he's contributing, and getting rid of bad kernel interfaces is always nice. I was just a little frustrated with a parallel splice-related-unscrew patch. (Askar, if I was too hostile, I do sincerely apologize.) -- Pedro