userfaultfd: non-cooperative: add mremap() event
authorPavel Emelyanov <[email protected]>
Wed, 22 Feb 2017 23:42:34 +0000 (15:42 -0800)
committerLinus Torvalds <[email protected]>
Thu, 23 Feb 2017 00:41:28 +0000 (16:41 -0800)
commit72f87654c69690ff4721bd9b4a39983f971de9a5
tree0e607734e047d2dc7379b186c5c8c57e9276fd8a
parentd3aadc8ed4cb447981ecf34f9af71cddc6cf907d
userfaultfd: non-cooperative: add mremap() event

The event denotes that an area [start:end] moves to different location.
Length change isn't reported as "new" addresses, if they appear on the
uffd reader side they will not contain any data and the latter can just
zeromap them.

Waiting for the event ACK is also done outside of mmap sem, as for fork
event.

Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Pavel Emelyanov <[email protected]>
Signed-off-by: Mike Rapoport <[email protected]>
Signed-off-by: Andrea Arcangeli <[email protected]>
Cc: "Dr. David Alan Gilbert" <[email protected]>
Cc: Hillf Danton <[email protected]>
Cc: Michael Rapoport <[email protected]>
Cc: Mike Kravetz <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
fs/userfaultfd.c
include/linux/userfaultfd_k.h
include/uapi/linux/userfaultfd.h
mm/mremap.c