aboutsummaryrefslogtreecommitdiff
path: root/mm
diff options
context:
space:
mode:
Diffstat (limited to 'mm')
-rw-r--r--mm/memory.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/mm/memory.c b/mm/memory.c
index 12d825704..e3255d0be 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -3710,11 +3710,12 @@ int handle_pte_fault(struct mm_struct *mm,
entry = *pte;
if (!pte_present(entry)) {
if (pte_none(entry)) {
- if (vma->vm_ops)
+ if (vma_is_anonymous(vma))
+ return do_anonymous_page(mm, vma, address,
+ pte, pmd, flags);
+ else
return do_linear_fault(mm, vma, address,
pte, pmd, flags, entry);
- return do_anonymous_page(mm, vma, address,
- pte, pmd, flags);
}
if (pte_file(entry))
return do_nonlinear_fault(mm, vma, address,