mmu_notifier: pass through vma to invalidate_range and invalidate_page v2
authorJérôme Glisse <jglisse@redhat.com>
Thu, 16 Jan 2014 21:05:47 +0000 (16:05 -0500)
committerSri Krishna Chowdary <schowdary@nvidia.com>
Wed, 3 Jun 2015 08:05:44 +0000 (01:05 -0700)
commit4b92f9503a47dc90416d9bb8bd7b395bf7a9729a
tree29cba86c7b22e848672a512cb650b93559f7c82a
parent0d78c985207499ec10992a2d79d5541e8f71b036
mmu_notifier: pass through vma to invalidate_range and invalidate_page v2

New user of the mmu_notifier interface need to lookup vma in order to
perform the invalidation operation. Instead of redoing a vma lookup
inside the callback just pass through the vma from the call site where
it is already available.

This needs small refactoring in memory.c to call invalidate_range on
vma boundary while previously it was call once for larger range. The
overhead might be offseted by the fact that mmu_notifier listener now
work on smaller and exact range.

Changed since v1 :
  - Only passthrough the vma.
  - Commit comment.

Signed-off-by: Jérôme Glisse <jglisse@redhat.com>
(cherry picked from commit eeb9f7693d2a86a7caa368e2c51d3ac09da04a8e)

Conflicts:
drivers/gpu/drm/i915/i915_gem_userptr.c
kernel/events/uprobes.c
mm/huge_memory.c
mm/hugetlb.c
mm/migrate.c
mm/rmap.c
mm/mprotect.c

Bug 200074285

Change-Id: I076973244386b359b1db6c6c2fe0c68d289b19ff
Signed-off-by: Sri Krishna chowdary <schowdary@nvidia.com>
Reviewed-on: http://git-master/r/678276
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
17 files changed:
drivers/iommu/amd_iommu_v2.c
drivers/misc/sgi-gru/grutlbpurge.c
drivers/xen/gntdev.c
include/linux/mmu_notifier.h
kernel/events/uprobes.c
mm/filemap_xip.c
mm/fremap.c
mm/huge_memory.c
mm/hugetlb.c
mm/ksm.c
mm/memory.c
mm/migrate.c
mm/mmu_notifier.c
mm/mprotect.c
mm/mremap.c
mm/rmap.c
virt/kvm/kvm_main.c