diff options
Diffstat (limited to 'mm')
| -rw-r--r-- | mm/memory.c | 7 |
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, |
