Re: [LSF/MM TOPIC] reverse splice

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



... also, this really needs to be cc'd to linux-mm.

On Thu, Feb 21, 2019 at 01:56:11PM +0100, Miklos Szeredi wrote:
> rsplice would serve a similar purpose as splice, but in the other
> direction.  I.e. instead of operating on buffers filled with data, it
> would operate on empty buffers to be filled with data.  rsplice is to
> splice as read is to write.
> 
> data source -> splice -> data destination
> data destination -> rsplice -> data source
> 
> One use case would be zero-copy read in fuse.   Zero-copy writes work
> with plain splice: page cache pages or userspace buffers are passed
> through to the userspace filesystem server as pipe buffers and they
> can be directed wherever the filesystem wants.   The reverse doesn't
> work.  There's code to attempt stealing pages and inserting into the
> fuse page cache, but this is far from being as generic as the write
> path.
> 
> What do people think?  Is this crazy?  Are there major roadblocks for
> implementation?  Would this have any other use cases?
> 
> To me it looks like this is pretty symmetrical with normal splice, the
> big difference being that uninitialized buffers would be passed
> around.  Obviously must make sure those buffers are write only, i.e.
> the previous contents are inaccessible.
> 
> Thanks,
> Miklos



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux