Re: [Reproducer] Corruption, possible race between splice and FALLOC_FL_PUNCH_HOLE

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

 



On Wed, Jun 28, 2023 at 07:30:50AM +0100, David Howells wrote:
> Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:
> 
> > > > Expected behavior:
> > > > Punching holes in a file after splicing pages out of that file into a pipe
> > > > should not corrupt the spliced-out pages in the pipe buffer.
> 
> I think this bit is the key.  Why would this be the expected behaviour?  As
> you say, splice is allowed to stuff parts of the pagecache into a pipe and
> these may get transferred, say, to a network card at the end to transmit
> directly from.  It's a form of direct I/O.  If someone has the pages mmapped,
> they can change the data that will be transmitted; if someone does a write(),
> they can change that data too.  The point of splice is to avoid the copy - but
> it comes with a tradeoff.

I wouldn't call "post-splice filesystem modifications randomly
corrupts pipe data" a tradeoff. I call that a bug. 

-Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx



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

  Powered by Linux