mm: allow vmas with vm_ops to be speculatively handled

Right now only anonymous pages are speculatively faulted, thus
leaving out a large percentage of faults still requiring to
take mmap_sem. These were left out since there can be fault
handlers mainly in the fs layer which may use vma in unknown
ways. This patch covers filemap_fault and shmem_fault and
enables speculative fault for all those vmas with vm_ops.
None of the other common fault handlers is seen to use or
modify vma.

Change-Id: I4f87909002f7ac64945f048ba0169a4cac7a15ab
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
5 files changed