Re: [PATCH 0/3] vmsplice: make vmsplice a trivial wrapper for preadv2/pwritev2
Askar Safin <[email protected]> Thu, 25 Jun 2026 11:53:57 +0300
| Newsgroups | dev.linux.lists.criu,dev.linux.lists.fuse-devel,dev.linux.lists.patches,org.kernel.vger.linux-api,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.netdev,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
Andrei Vagin <[email protected]>: > On Wed, Jun 24, 2026 at 12:12 AM Askar Safin <[email protected]> wrote: > > Does CRIU actually rely on ability to do SPLICE_F_NONBLOCK vmsplice into > > named fifos? Or this is merely a test? > > Yes, it does. I. e. CRIU relies on that named fifo behavior? Okay, I just sent v2 version of my fixes. The patchset contains fix for named fifos. Please, test that this fixes that named fifo problem. > I already explained that this isn't just a perfomance degradation, it > actually breaks the pre-dump mechanism in CRIU. vmsplice is invoked from > our parasite code within the context of a user process, where execution > speed is critical. A heavy performance penalty completely invalidates > the pre-dump logic, making the feature useless. This is very unfortunate. But I still want to remove vmsplice. > At a minimum, we may need to consider a deprecation plan where vmsplice > with SPLICE_F_GIFT triggers a warning for a few releases before these > changes are applied. Alternatively, we could introduce the proposed > behavior alongside a sysctl to fall back to the old behavior and explicitly > state that this fallback path will be completely deprecated in a future kernel > version. My patches change not only SPLICE_F_GIFT behavior, but also vmsplice behavior in general. Let other developers decide what to do (i. e. do nothing, remove vmsplice now or implement some deprecation scheme). -- Askar Safin