X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=fs%2Fdax.c;h=43671b68220ed968386f5c1ad9067f236fbab67e;hb=45568625feacf13f1450da6b8cec17bf97c5a3fd;hp=d1e5cb7311a1de295ecd4348360a9a9947e71142;hpb=b84da9fa47cf6e8dfd71d673a2f744ec1cac452c;p=firefly-linux-kernel-4.4.55.git diff --git a/fs/dax.c b/fs/dax.c index d1e5cb7311a1..43671b68220e 100644 --- a/fs/dax.c +++ b/fs/dax.c @@ -541,6 +541,10 @@ int __dax_pmd_fault(struct vm_area_struct *vma, unsigned long address, unsigned long pfn; int result = 0; + /* dax pmd mappings are broken wrt gup and fork */ + if (!IS_ENABLED(CONFIG_FS_DAX_PMD)) + return VM_FAULT_FALLBACK; + /* Fall back to PTEs if we're going to COW */ if (write && !(vma->vm_flags & VM_SHARED)) return VM_FAULT_FALLBACK;