Re: xfs_file_splice_read: possible circular locking dependency detected

Al Viro <[email protected]> Fri, 9 Sep 2016 03:26:28 +0100
Newsgroups gmane.comp.file-systems.xfs.general
Message-ID <[email protected]>
On Fri, Sep 09, 2016 at 11:53:24AM +1000, Dave Chinner wrote:
 
> This isn't specific to splice - it's the same issue for all page
> cache lookup and validation checks. This issue is one of the reasons
> why XFS has a MMAPLOCK similar to the IOLOCK - we can't take the
> IOLOCK in the page fault path, but we still need to protect page
> faults against racing page invalidations within EOF from operations
> like hole punch.

Point taken.  The window is between grabbing the pages and ->readpage()
calls, though, so converting to ->read_iter() ought to deal with the
entire class of problems...
 
[snip]

> Sounds reasonable, but the iter stuff makes my head hurt so I
> haven't thought about it that deeply yet.

O_DIRECT requires a bit of care, but it seems to be doable.

_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs