Michal Hocko
b95046b047
mm, sparse, page_ext: drop ugly N_HIGH_MEMORY branches for allocations
...
Commit f52407ce2d ("memory hotplug: alloc page from other node in
memory online") has introduced N_HIGH_MEMORY checks to only use NUMA
aware allocations when there is some memory present because the
respective node might not have any memory yet at the time and so it
could fail or even OOM.
Things have changed since then though. Zonelists are now always
initialized before we do any allocations even for hotplug (see
959ecc48fc ("mm/memory_hotplug.c: fix building of node hotplug
zonelist")).
Therefore these checks are not really needed. In fact caller of the
allocator should never care about whether the node is populated because
that might change at any time.
Link: http://lkml.kernel.org/r/20170721143915.14161-10-mhocko@kernel.org
Signed-off-by: Michal Hocko <mhocko@suse.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Shaohua Li <shaohua.li@intel.com>
Cc: Joonsoo Kim <js1304@gmail.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Toshi Kani <toshi.kani@hpe.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-09-06 17:27:26 -07:00
..
kasan
Merge branch 'linus' into locking/core, to pick up fixes
2017-08-10 12:20:53 +02:00
backing-dev.c
bdi: Drop 'parent' argument from bdi_register[_va]()
2017-04-20 12:09:55 -06:00
balloon_compaction.c
mm/balloon_compaction.c: don't zero ballooned pages
2017-08-10 15:54:07 -07:00
bootmem.c
cleancache.c
fs: switch ->s_uuid to uuid_t
2017-06-05 16:59:12 +02:00
cma.c
cma: fix calculation of aligned offset
2017-07-10 16:32:32 -07:00
cma.h
cma: Store a name in the cma structure
2017-04-18 20:41:12 +02:00
cma_debug.c
mm/cma_debug.c: fix stack corruption due to sprintf usage
2017-08-18 15:32:02 -07:00
compaction.c
mm, compaction: skip over holes in __reset_isolation_suitable
2017-07-06 16:24:32 -07:00
debug.c
mm: make tlb_flush_pending global
2017-08-10 15:54:07 -07:00
debug_page_ref.c
dmapool.c
early_ioremap.c
x86/mm: Add support to access boot related data in the clear
2017-07-18 11:38:02 +02:00
fadvise.c
failslab.c
filemap.c
dax: remove DAX code from page_cache_tree_insert()
2017-09-06 17:27:24 -07:00
frame_vector.c
treewide: use kv[mz]alloc* rather than opencoded variants
2017-05-08 17:15:13 -07:00
frontswap.c
gup.c
mm, gup: ensure real head page is ref-counted when using hugepages
2017-07-06 16:24:34 -07:00
highmem.c
huge_memory.c
Merge branch 'linus' into locking/core, to pick up fixes
2017-08-25 11:04:51 +02:00
hugetlb.c
userfaultfd: hugetlbfs: remove superfluous page unlock in VM_SHARED case
2017-08-10 15:54:06 -07:00
hugetlb_cgroup.c
hwpoison-inject.c
mm: hwpoison: call shake_page() unconditionally
2017-05-03 15:52:12 -07:00
init-mm.c
internal.h
mm, memory_hotplug: drop zone from build_all_zonelists
2017-09-06 17:27:25 -07:00
interval_tree.c
Kconfig
mm/kasan: add support for memory hotplug
2017-07-10 16:32:33 -07:00
Kconfig.debug
mm: enable page poisoning early at boot
2017-05-03 15:52:10 -07:00
khugepaged.c
mm: make PR_SET_THP_DISABLE immediately active
2017-07-10 16:32:31 -07:00
kmemcheck.c
mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU
2017-04-18 11:42:36 -07:00
kmemleak-test.c
kmemleak.c
mm: kmemleak: treat vm_struct as alternative reference to vmalloc'ed objects
2017-07-06 16:24:34 -07:00
ksm.c
mm: fix KSM data corruption
2017-08-10 15:54:07 -07:00
list_lru.c
mm/list_lru.c: fix list_lru_count_node() to be race free
2017-07-10 16:32:33 -07:00
maccess.c
madvise.c
mm, madvise: ensure poisoned pages are removed from per-cpu lists
2017-08-31 16:33:15 -07:00
Makefile
percpu: expose statistics about percpu memory via debugfs
2017-06-20 15:31:38 -04:00
memblock.c
mm/memblock.c: reversed logic in memblock_discard()
2017-08-25 16:12:46 -07:00
memcontrol.c
mm: memcontrol: fix NULL pointer crash in test_clear_page_writeback()
2017-08-18 15:32:01 -07:00
memory-failure.c
x86/mm, mm/hwpoison: Clear PRESENT bit for kernel 1:1 mappings of poison pages
2017-08-17 10:30:49 +02:00
memory.c
mm: add vm_insert_mixed_mkwrite()
2017-09-06 17:27:24 -07:00
memory_hotplug.c
mm, memory_hotplug: get rid of zonelists_mutex
2017-09-06 17:27:26 -07:00
mempolicy.c
mm/mempolicy: fix use after free when calling get_mempolicy
2017-08-18 15:32:02 -07:00
mempool.c
sched/wait: Rename wait_queue_t => wait_queue_entry_t
2017-06-20 12:18:27 +02:00
memtest.c
migrate.c
Sanitize 'move_pages()' permission checks
2017-08-20 13:26:27 -07:00
mincore.c
mlock.c
mlock: fix mlock count can not decrease in race condition
2017-06-02 15:07:38 -07:00
mm_init.c
mmap.c
mm: fix overflow check in expand_upwards()
2017-07-14 15:05:12 -07:00
mmu_context.c
mmu_notifier.c
mm/mmu_notifier: kill invalidate_page
2017-08-31 16:13:00 -07:00
mmzone.c
mprotect.c
mm: migrate: prevent racy access to tlb_flush_pending
2017-08-10 15:54:07 -07:00
mremap.c
userfaultfd: non-cooperative: notify about unmap of destination during mremap
2017-08-02 16:34:46 -07:00
msync.c
nobootmem.c
mm: discard memblock data later
2017-08-18 15:32:01 -07:00
nommu.c
mm, vmalloc: use __GFP_HIGHMEM implicitly
2017-05-08 17:15:13 -07:00
oom_kill.c
mm/oom_kill.c: add tracepoints for oom reaper-related events
2017-07-10 16:32:32 -07:00
page-writeback.c
mm: memcontrol: fix NULL pointer crash in test_clear_page_writeback()
2017-08-18 15:32:01 -07:00
page_alloc.c
mm, memory_hotplug: get rid of zonelists_mutex
2017-09-06 17:27:26 -07:00
page_counter.c
page_ext.c
mm, sparse, page_ext: drop ugly N_HIGH_MEMORY branches for allocations
2017-09-06 17:27:26 -07:00
page_idle.c
mm: make rmap_one boolean function
2017-05-03 15:52:10 -07:00
page_io.c
mm/page_io.c: fix oops during block io poll in swapin path
2017-08-02 17:16:11 -07:00
page_isolation.c
mm: unify new_node_page and alloc_migrate_target
2017-07-10 16:32:31 -07:00
page_owner.c
mm: avoid taking zone lock in pagetypeinfo_showmixed()
2017-07-10 16:32:32 -07:00
page_poison.c
mm: enable page poisoning early at boot
2017-05-03 15:52:10 -07:00
page_vma_mapped.c
mm/hugetlb: add size parameter to huge_pte_offset()
2017-07-06 16:24:34 -07:00
pagewalk.c
mm/hugetlb: add size parameter to huge_pte_offset()
2017-07-06 16:24:34 -07:00
percpu-internal.h
percpu: fix early calls for spinlock in pcpu_stats
2017-06-21 13:53:52 -04:00
percpu-km.c
percpu: fix static checker warnings in pcpu_destroy_chunk
2017-06-29 11:23:38 -04:00
percpu-stats.c
percpu: expose statistics about percpu memory via debugfs
2017-06-20 15:31:38 -04:00
percpu-vm.c
percpu: fix static checker warnings in pcpu_destroy_chunk
2017-06-29 11:23:38 -04:00
percpu.c
percpu: resolve err may not be initialized in pcpu_alloc
2017-06-21 12:00:45 -04:00
pgtable-generic.c
mm: convert generic code to 5-level paging
2017-03-09 11:48:47 -08:00
process_vm_access.c
quicklist.c
readahead.c
rmap.c
mm/rmap: update to new mmu_notifier semantic v2
2017-08-31 16:12:59 -07:00
rodata_test.c
mm: remove rodata_test_data export, add pr_fmt
2017-05-03 15:52:09 -07:00
shmem.c
mm, shmem: fix handling /sys/kernel/mm/transparent_hugepage/shmem_enabled
2017-08-25 16:12:46 -07:00
slab.c
mm: memcontrol: account slab stats per lruvec
2017-07-06 16:24:35 -07:00
slab.h
locking/lockdep: Rework FS_RECLAIM annotation
2017-08-10 12:29:03 +02:00
slab_common.c
mm: allow slab_nomerge to be set at build time
2017-07-06 16:24:31 -07:00
slob.c
locking/lockdep: Rework FS_RECLAIM annotation
2017-08-10 12:29:03 +02:00
slub.c
mm/slub.c: add a naive detection of double free or corruption
2017-09-06 17:27:24 -07:00
sparse-vmemmap.c
mm, sparse, page_ext: drop ugly N_HIGH_MEMORY branches for allocations
2017-09-06 17:27:26 -07:00
sparse.c
mm, sparse, page_ext: drop ugly N_HIGH_MEMORY branches for allocations
2017-09-06 17:27:26 -07:00
swap.c
mm: swap: provide lru_add_drain_all_cpuslocked()
2017-07-10 16:32:33 -07:00
swap_cgroup.c
mm, THP, swap: delay splitting THP during swap out
2017-07-06 16:24:31 -07:00
swap_slots.c
mm/swap_slots.c: don't disable preemption while taking the per-CPU cache
2017-07-10 16:32:32 -07:00
swap_state.c
swap: add block io poll in swapin path
2017-07-10 16:32:30 -07:00
swapfile.c
swap: add block io poll in swapin path
2017-07-10 16:32:30 -07:00
truncate.c
mm/truncate.c: fix THP handling in invalidate_mapping_pages()
2017-07-10 16:32:32 -07:00
usercopy.c
mm/usercopy: Drop extra is_vmalloc_or_module() check
2017-04-05 12:30:18 -07:00
userfaultfd.c
mm: convert generic code to 5-level paging
2017-03-09 11:48:47 -08:00
util.c
mm: fix global NR_SLAB_.*CLAIMABLE counter reads
2017-08-10 15:54:06 -07:00
vmacache.c
vmalloc.c
mm/vmalloc.c: don't unconditonally use __GFP_HIGHMEM
2017-08-18 15:32:02 -07:00
vmpressure.c
mm, vmpressure: pass-through notification support
2017-07-10 16:32:31 -07:00
vmscan.c
mm: track actual nr_scanned during shrink_slab()
2017-09-06 17:27:24 -07:00
vmstat.c
mm: avoid taking zone lock in pagetypeinfo_showmixed()
2017-07-10 16:32:32 -07:00
workingset.c
mm: memcontrol: per-lruvec stats infrastructure
2017-07-06 16:24:35 -07:00
z3fold.c
z3fold: fix page locking in z3fold_alloc()
2017-04-13 18:24:20 -07:00
zbud.c
zpool.c
zsmalloc.c
zram: do not free pool->size_class
2017-08-02 16:34:47 -07:00
zswap.c
mm/zswap.c: delete an error message for a failed memory allocation in zswap_dstmem_prepare()
2017-07-06 16:24:35 -07:00