Re: [PATCH 17/17] xfs: support for synchronous DAX faults
From: Jan Kara <hidden>
Date: 2017-10-27 09:13:01
Also in:
linux-ext4, linux-fsdevel, linux-mm, linux-xfs, nvdimm
From: Jan Kara <hidden>
Date: 2017-10-27 09:13:01
Also in:
linux-ext4, linux-fsdevel, linux-mm, linux-xfs, nvdimm
On Fri 27-10-17 08:43:01, Christoph Hellwig wrote:
On Thu, Oct 26, 2017 at 05:48:04PM +0200, Jan Kara wrote:quoted
But now that I look at XFS implementation again, it misses handling of VM_FAULT_NEEDSYNC in xfs_filemap_pfn_mkwrite() (ext4 gets this right). I'll fix this by using __xfs_filemap_fault() for xfs_filemap_pfn_mkwrite() as well since it mostly duplicates it anyway... Thanks for inquiring!My first patches move xfs_filemap_pfn_mkwrite to use __xfs_filemap_fault, but that didn't work. Wish I'd remember why, though.
Maybe due to the additional check on IS_DAX(inode) in __xfs_filemap_fault() which could do the wrong thing if per-inode DAX flag is switched? Because otherwise __xfs_filemap_fault(vmf, PE_SIZE_PTE, true) does exactly the same thing as xfs_filemap_pfn_mkwrite() did. If we do care about per-inode DAX flag switching, I can just fixup xfs_filemap_pfn_mkwrite() but my understanding was that we ditched the idea at least until someone comes up with a reliable way to implement that... Honza -- Jan Kara [off-list ref] SUSE Labs, CR