@@ -1156,6 +1156,8 @@ __xfs_filemap_fault(
} else {
if (write_fault)
ret = iomap_page_mkwrite(vmf, &xfs_iomap_ops);
+ else if (pe_size)
+ ret = filemap_huge_fault(vmf, pe_size);
else
ret = filemap_fault(vmf);
}
@@ -1181,9 +1183,6 @@ xfs_filemap_huge_fault(
struct vm_fault *vmf,
enum page_entry_size pe_size)
{
- if (!IS_DAX(file_inode(vmf->vma->vm_file)))
- return VM_FAULT_FALLBACK;
-
/* DAX can shortcut the normal fault path on write faults! */
return __xfs_filemap_fault(vmf, pe_size,
(vmf->flags & FAULT_FLAG_WRITE));