Hello, When testing my DAX patches rebased on top of Ross' DAX PMD series, I've come across the following issue with generic/344 test from xfstests. The test ends in an infinite fault loop when we fault index 0 over and over again never finishing the fault. The problem is that we do a write fault for index 0 when there is PMD for that index. So we enter wp_huge_pmd(). For whatever reason that returns VM_FAULT_FALLBACK so we continue to handle_pte_fault(). There we do if (pmd_trans_unstable(vmf->pmd) || pmd_devmap(*vmf->pmd)) check which is true - the PMD we have is pmd_trans_huge() - so we 'return 0' and that results in retrying the fault and all happens from the beginning again. It isn't quite obvious how to break that cycle to me. The comment before pmd_none_or_trans_huge_or_clear_bad() goes to great lengths explaining possible races when PMD is pmd_trans_huge() so it needs careful evaluation what needs to be done for DAX. Ross, any idea? Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html