On Thu, Apr 04, 2019 at 02:12:30AM -0400, Pankaj Gupta wrote:
> All this ad hoc IS_DAX conditional logic is getting pretty
nasty.
>
> xfs_file_mmap(
> ....
> {
> struct inode *inode = file_inode(filp);
>
> if (vma->vm_flags & VM_SYNC) {
> if (!IS_DAX(inode))
> return -EOPNOTSUPP;
> if (!dax_synchronous(xfs_find_daxdev_for_inode(inode))
> return -EOPNOTSUPP;
> }
>
> file_accessed(filp);
> vma->vm_ops = &xfs_file_vm_ops;
> if (IS_DAX(inode))
> vma->vm_flags |= VM_HUGEPAGE;
> return 0;
> }
Sure, this is better.
> Even better, factor out all the "MAP_SYNC supported"
checks into a
> helper so that the filesystem code just doesn't have to care about
> the details of checking for DAX+MAP_SYNC support....
o.k. Will add one common helper function for both ext4 & xfs filesystems.
Note this pending patch for Goldwyn Rodrigues' patchset for btrfs:
https://lore.kernel.org/linux-btrfs/20190328102418.5466-1-kilobyte@angban...
We might want to coordinate.
Meow!
--
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Did ya know that typing "test -j8" instead of "ctest -j8"
⢿⡄⠘⠷⠚⠋⠀ will make your testsuite pass much faster, and fix bugs?
⠈⠳⣄⠀⠀⠀⠀