aboutsummaryrefslogtreecommitdiffstats
path: root/fs/userfaultfd.c
diff options
context:
space:
mode:
authorAndrea Arcangeli <aarcange@redhat.com>2017-02-22 18:42:37 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2017-02-22 19:41:28 -0500
commit90794bf19dc19691a16b71bcd75c04094d9e392d (patch)
tree96c80c3f2d4b0aa5b72ab5965269e7050fec4185 /fs/userfaultfd.c
parent72f87654c69690ff4721bd9b4a39983f971de9a5 (diff)
userfaultfd: non-cooperative: optimize mremap_userfaultfd_complete()
Optimize the mremap_userfaultfd_complete() interface to pass only the vm_userfaultfd_ctx pointer through the stack as a microoptimization. Link: http://lkml.kernel.org/r/20161216144821.5183-13-aarcange@redhat.com Signed-off-by: Andrea Arcangeli <aarcange@redhat.com> Reported-by: Hillf Danton <hillf.zj@alibaba-inc.com> Acked-by: Mike Rapoport <rppt@linux.vnet.ibm.com> Cc: "Dr. David Alan Gilbert" <dgilbert@redhat.com> Cc: Michael Rapoport <RAPOPORT@il.ibm.com> Cc: Mike Kravetz <mike.kravetz@oracle.com> Cc: Pavel Emelyanov <xemul@parallels.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/userfaultfd.c')
-rw-r--r--fs/userfaultfd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c
index 68f978beefac..5d37c37854b0 100644
--- a/fs/userfaultfd.c
+++ b/fs/userfaultfd.c
@@ -608,11 +608,11 @@ void mremap_userfaultfd_prep(struct vm_area_struct *vma,
608 } 608 }
609} 609}
610 610
611void mremap_userfaultfd_complete(struct vm_userfaultfd_ctx vm_ctx, 611void mremap_userfaultfd_complete(struct vm_userfaultfd_ctx *vm_ctx,
612 unsigned long from, unsigned long to, 612 unsigned long from, unsigned long to,
613 unsigned long len) 613 unsigned long len)
614{ 614{
615 struct userfaultfd_ctx *ctx = vm_ctx.ctx; 615 struct userfaultfd_ctx *ctx = vm_ctx->ctx;
616 struct userfaultfd_wait_queue ewq; 616 struct userfaultfd_wait_queue ewq;
617 617
618 if (!ctx) 618 if (!ctx)