2016-04-27-15-21 merged

Andrea Arcangeli (1):
      mm: thp: kvm: fix memory corruption in KVM with THP enabled

Andrew Morton (9):
      mm-page_alloc-only-check-pagecompound-for-high-order-pages-fix
      mm-page_alloc-remove-unnecessary-initialisation-from-__alloc_pages_nodemask-fix
      mm-page_alloc-shorten-the-page-allocator-fast-path-fix
      mm-page_alloc-avoid-looking-up-the-first-zone-in-a-zonelist-twice-fix
      mm-page_alloc-un-inline-the-bad-part-of-free_pages_check-fix
      mm-page_alloc-defer-debugging-checks-of-freed-pages-until-a-pcp-drain-fix
      mm-page_alloc-dont-duplicate-code-in-free_pcp_prepare-fix
      mm-slab-freelist-randomization-v5-fix
      mm-thp-avoid-unnecessary-swapin-in-khugepaged-fix

Chen Gang (2):
      include/linux/hugetlb*.h: clean up code
      include/linux/hugetlb.h: use bool instead of int for hugepage_migration_supported()

Chen Yucong (1):
      memory-failure-replace-mce-with-memory-failure-fix

Christian König (2):
      drm/amdgpu: remove the userptr rmn->lock
      drm/amdgpu: Revert "remove the userptr rmn->lock"

Dan Streetman (1):
      mm/zswap: use workqueue to destroy pool

David Rientjes (1):
      mm, hugetlb_cgroup: round limit_in_bytes down to hugepage size

Ebru Akagunduz (2):
      mm, vmstat: calculate particular vm event
      mm, thp: avoid unnecessary swapin in khugepaged

Eric Dumazet (1):
      mm: tighten fault_in_pages_writeable()

Eric Engestrom (1):
      MAINTAINERS: fix Rajendra Nayak's address

Felix Kuehling (3):
      drm/amdgpu: Fix race condition in MMU notifier release
      drm/amdgpu: Fix race condition in amdgpu_mn_unregister
      drm/amdgpu: Don't call interval_tree_remove in amdgpu_mn_destroy

Hugh Dickins (2):
      mm, cma: prevent nr_isolated_* counters from going negative
      mm, compaction: prevent nr_isolated_* from going negative

Joonsoo Kim (1):
      mm/slab: fix bug

Konstantin Khlebnikov (1):
      mm: enable RLIMIT_DATA by default with workaround for valgrind

Mel Gorman (26):
      mm, page_alloc: only check PageCompound for high-order pages
      mm, page_alloc: use new PageAnonHead helper in the free page fast path
      mm, page_alloc: reduce branches in zone_statistics
      mm, page_alloc: inline zone_statistics
      mm, page_alloc: use __dec_zone_state for order-0 page allocation
      mm, page_alloc: avoid unnecessary zone lookups during pageblock operations
      mm, page_alloc: convert nr_fair_skipped to bool
      mm, page_alloc: remove unnecessary local variable in get_page_from_freelist
      mm, page_alloc: remove unnecessary initialisation in get_page_from_freelist
      mm, page_alloc: remove unnecessary initialisation from __alloc_pages_nodemask()
      mm, page_alloc: simplify last cpupid reset
      mm, page_alloc: move __GFP_HARDWALL modifications out of the fastpath
      mm, page_alloc: check once if a zone has isolated pageblocks
      mm, page_alloc: Check once if a zone has isolated pageblocks -fix
      mm, page_alloc: shorten the page allocator fast path
      mm, page_alloc: reduce cost of fair zone allocation policy retry
      mm, page_alloc: shortcut watermark checks for order-0 pages
      mm, page_alloc: avoid looking up the first zone in a zonelist twice
      mm, page_alloc: remove field from alloc_context
      mm, page_alloc: check multiple page fields with a single branch
      mm, page_alloc: pull out side effects from free_pages_check
      mm, page_alloc: remove unnecessary variable from free_pcppages_bulk
      mm, page_alloc: inline pageblock lookup in page free fast paths
      mm, page_alloc: defer debugging checks of freed pages until a PCP drain
      mm, page_alloc: defer debugging checks of pages allocated from the PCP
      mm, page_alloc: don't duplicate code in free_pcp_prepare

Michal Hocko (61):
      Reverted "mm, compaction: direct freepage allocation for async direct compaction"
      Reverted "mm: fix incorrect pfn passed to untrack_pfn() in remap_pfn_range()"
      Reverted "mm-kasan-initial-memory-quarantine-implementation-v8-fix"
      Reverted "mm, page_alloc: defer debugging checks of pages allocated from the PCP"
      Reverted "mm, page_alloc: defer debugging checks of freed pages until a PCP drain"
      Reverted "cpuset: use static key better and convert to new API"
      Reverted "mm, page_alloc: inline pageblock lookup in page free fast paths"
      Reverted "mm, page_alloc: remove unnecessary variable from free_pcppages_bulk"
      Reverted "mm, page_alloc: check multiple page fields with a single branch"
      Reverted "mm, page_alloc: remove field from alloc_context"
      Reverted "mm, page_alloc: avoid looking up the first zone in a zonelist twice"
      Reverted "mm, page_alloc: shortcut watermark checks for order-0 pages"
      Reverted "mm, page_alloc: reduce cost of fair zone allocation policy retry"
      Reverted "mm, page_alloc: shorten the page allocator fast path"
      Reverted "mm, page_alloc: check once if a zone has isolated pageblocks"
      Reverted "mm, page_alloc: move __GFP_HARDWALL modifications out of the fastpath"
      Reverted "mm, page_alloc: move might_sleep_if check to the allocator slowpath"
      Reverted "mm, page_alloc: simplify last cpupid reset"
      Reverted "mm, page_alloc: remove redundant check for empty zonelist"
      Reverted "mm, page_alloc: remove unnecessary initialisation from __alloc_pages_nodemask()"
      Reverted "mm, page_alloc: remove unnecessary initialisation in get_page_from_freelist"
      Reverted "mm, page_alloc: remove unnecessary local variable in get_page_from_freelist"
      Reverted "mm, page_alloc: convert nr_fair_skipped to bool"
      Reverted "mm, page_alloc: avoid unnecessary zone lookups during pageblock operations"
      Reverted "mm, page_alloc: use __dec_zone_state for order-0 page allocation"
      Reverted "mm, page_alloc: inline zone_statistics"
      Reverted "mm, page_alloc: reduce branches in zone_statistics"
      Reverted "mm, page_alloc: use new PageAnonHead helper in the free page fast path"
      Reverted "mm, page_alloc: only check PageCompound for high-order pages"
      mm, oom_reaper: hide oom reaped tasks from OOM killer more carefully
      mm, oom_reaper: do not mmput synchronously from the oom reaper context
      mm-fix: mm, oom_reaper: do not mmput synchronously from the oom reaper context
      locking/rwsem: Get rid of __down_write_nested()
      locking/rwsem: Drop explicit memory barriers
      locking/rwsem, xtensa: Drop superfluous arch specific implementation
      locking/rwsem, sh: Drop superfluous arch specific implementation
      locking/rwsem, sparc: Drop superfluous arch specific implementation
      locking/rwsem: Introduce basis for down_write_killable()
      locking/rwsem, alpha: Provide __down_write_killable()
      locking/rwsem, ia64: Provide __down_write_killable()
      locking/rwsem, s390: Provide __down_write_killable()
      locking/rwsem, x86: Provide __down_write_killable()
      locking/rwsem: Provide down_write_killable()
      mm: make mmap_sem for write waits killable for mm syscalls
      mm: make vm_mmap killable
      mm: make vm_munmap killable
      mm, aout: handle vm_brk failures
      mm, elf: handle vm_brk error
      mm: make vm_brk killable
      mm, proc: make clear_refs killable
      mm, fork: make dup_mmap wait for mmap_sem for write killable
      ipc, shm: make shmem attach/detach wait for mmap_sem killable
      vdso: make arch_setup_additional_pages wait for mmap_sem for write killable
      coredump: make coredump_wait wait for mmap_sem for write killable
      aio: make aio_setup_ring killable
      exec: make exec path waiting for mmap_sem killable
      prctl: make PR_SET_THP_DISABLE wait for mmap_sem killable
      uprobes: wait for mmap_sem for write killable
      drm/i915: make i915_gem_mmap_ioctl wait for mmap_sem killable
      drm/radeon: make radeon_mn_get wait for mmap_sem killable
      drm/amdgpu: make amdgpu_mn_get wait for mmap_sem killable

Ming Li (1):
      mm/swap.c: put activate_page_pvecs and other pagevecs together

Rich Felker (1):
      tmpfs/ramfs: fix VM_MAYSHARE mappings for NOMMU

Thomas Garnier (2):
      mm: SLAB freelist randomization
      mm: SLAB freelist randomization

Vitaly Wool (1):
      z3fold-the-3-fold-allocator-for-compressed-pages-v3

Vlastimil Babka (4):
      mm, page_alloc: un-inline the bad part of free_pages_check
      cpuset: use static key better and convert to new API
      mm, page_alloc: uninline the bad page part of check_new_page()
      mm, compaction: fix crash in get_pfnblock_flags_mask() from isolate_freepages():

Weijie Yang (1):
      mm fix commmets: If SPARSEMEM, pgdata doesn't have page_ext

Xishi Qiu (1):
      Documentation/sysctl/vm.txt: update numa_zonelist_order description

Yongji Xie (1):
      mm: fix incorrect pfn passed to untrack_pfn() in remap_pfn_range()
drm/amdgpu: make amdgpu_mn_get wait for mmap_sem killable

amdgpu_mn_get which is called during ioct path relies on mmap_sem for
write.  If the waiting task gets killed by the oom killer it would block
oom_reaper from asynchronous address space reclaim and reduce the chances
of timely OOM resolving.  Wait for the lock in the killable mode and
return with EINTR if the task got killed while waiting.

Signed-off-by: Michal Hocko <mhocko@suse.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Reviewed-by: Christian König <christian.koenig@amd.com>
Cc: David Airlie <airlied@linux.ie>
Cc: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1 file changed