linux-sg2042/arch/tile/mm
Mike Rapoport 897ab3e0c4 userfaultfd: non-cooperative: add event for memory unmaps
When a non-cooperative userfaultfd monitor copies pages in the
background, it may encounter regions that were already unmapped.
Addition of UFFD_EVENT_UNMAP allows the uffd monitor to track precisely
changes in the virtual memory layout.

Since there might be different uffd contexts for the affected VMAs, we
first should create a temporary representation for the unmap event for
each uffd context and then notify them one by one to the appropriate
userfault file descriptors.

The event notification occurs after the mmap_sem has been released.

[arnd@arndb.de: fix nommu build]
  Link: http://lkml.kernel.org/r/20170203165141.3665284-1-arnd@arndb.de
[mhocko@suse.com: fix nommu build]
  Link: http://lkml.kernel.org/r/20170202091503.GA22823@dhcp22.suse.cz
Link: http://lkml.kernel.org/r/1485542673-24387-3-git-send-email-rppt@linux.vnet.ibm.com
Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Signed-off-by: Michal Hocko <mhocko@suse.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Hillf Danton <hillf.zj@alibaba-inc.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: Mike Kravetz <mike.kravetz@oracle.com>
Cc: Pavel Emelyanov <xemul@virtuozzo.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-02-24 17:46:55 -08:00
..
Makefile arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
elf.c userfaultfd: non-cooperative: add event for memory unmaps 2017-02-24 17:46:55 -08:00
extable.c tile: migrate exception table users off module.h and onto extable.h 2016-12-16 15:32:29 -05:00
fault.c tile: migrate exception table users off module.h and onto extable.h 2016-12-16 15:32:29 -05:00
highmem.c kmap_atomic_to_page() has no users, remove it 2015-11-09 15:11:24 -08:00
homecache.c tile: use __ro_after_init instead of tile-specific __write_once 2016-12-16 15:32:29 -05:00
hugetlbpage.c tile: mm: use hugetlb_bad_size() 2016-05-19 19:12:14 -07:00
init.c tile: use __ro_after_init instead of tile-specific __write_once 2016-12-16 15:32:29 -05:00
migrate.h arch/tile: use interrupt critical sections less 2012-05-25 12:48:20 -04:00
migrate_32.S tile: provide traceability for hypervisor calls 2013-08-13 16:26:31 -04:00
migrate_64.S tile: provide traceability for hypervisor calls 2013-08-13 16:26:31 -04:00
mmap.c tile: use simpler API for random address requests 2016-10-11 15:06:32 -07:00
pgtable.c arch, mm: remove arch specific show_mem 2017-02-22 16:41:30 -08:00