linux_dsm_epyc7002/mm
seokhoon.yoon 29b52de182 mm, kasan: fix to call kasan_free_pages() after poisoning page
When CONFIG_PAGE_POISONING and CONFIG_KASAN is enabled,
free_pages_prepare()'s codeflow is below.

  1)kmemcheck_free_shadow()
  2)kasan_free_pages()
    - set shadow byte of page is freed
  3)kernel_poison_pages()
  3.1) check access to page is valid or not using kasan
    ---> error occur, kasan think it is invalid access
  3.2) poison page
  4)kernel_map_pages()

So kasan_free_pages() should be called after poisoning the page.

Link: http://lkml.kernel.org/r/1463220405-7455-1-git-send-email-iamyooon@gmail.com
Signed-off-by: seokhoon.yoon <iamyooon@gmail.com>
Cc: Andrey Ryabinin <a.ryabinin@samsung.com>
Cc: Laura Abbott <labbott@fedoraproject.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-05-20 17:58:30 -07:00
..
kasan
backing-dev.c mm: throttle on IO only when there are too many dirty and writeback pages 2016-05-20 17:58:30 -07:00
balloon_compaction.c
bootmem.c
cleancache.c
cma_debug.c
cma.c
cma.h
compaction.c mm, oom, compaction: prevent from should_compact_retry looping for ever for costly orders 2016-05-20 17:58:30 -07:00
debug_page_ref.c
debug.c
dmapool.c
early_ioremap.c
fadvise.c
failslab.c
filemap.c mm: make faultaround produce old ptes 2016-05-20 17:58:30 -07:00
frame_vector.c
frontswap.c
gup.c
highmem.c mm/highmem: make nr_free_highpages() handles all highmem zones by itself 2016-05-19 19:12:14 -07:00
huge_memory.c mm: thp: split_huge_pmd_address() comment improvement 2016-05-20 17:58:30 -07:00
hugetlb_cgroup.c mm, hugetlb_cgroup: round limit_in_bytes down to hugepage size 2016-05-20 17:58:30 -07:00
hugetlb.c mm/hugetlb: add same zone check in pfn_range_valid_gigantic() 2016-05-19 19:12:14 -07:00
hwpoison-inject.c
init-mm.c
internal.h mm, compaction: distinguish between full and partial COMPACT_COMPLETE 2016-05-20 17:58:30 -07:00
interval_tree.c
Kconfig z3fold: the 3-fold allocator for compressed pages 2016-05-20 17:58:30 -07:00
Kconfig.debug
kmemcheck.c
kmemleak-test.c
kmemleak.c
ksm.c ksm: fix conflict between mmput and scan_get_next_rmap_item 2016-05-12 15:52:50 -07:00
list_lru.c
maccess.c
madvise.c
Makefile z3fold: the 3-fold allocator for compressed pages 2016-05-20 17:58:30 -07:00
memblock.c mm/memblock.c: remove unnecessary always-true comparison 2016-05-20 17:58:30 -07:00
memcontrol.c memcg: fix stale mem_cgroup_force_empty() comment 2016-05-20 17:58:30 -07:00
memory_hotplug.c memory_hotplug: introduce memhp_default_state= command line parameter 2016-05-19 19:12:14 -07:00
memory-failure.c mm/memory-failure.c: replace "MCE" with "Memory failure" 2016-05-20 17:58:30 -07:00
memory.c mm: disable fault around on emulated access bit architecture 2016-05-20 17:58:30 -07:00
mempolicy.c mm, page_alloc: avoid looking up the first zone in a zonelist twice 2016-05-19 19:12:14 -07:00
mempool.c
memtest.c
migrate.c mm: use __SetPageSwapBacked and dont ClearPageSwapBacked 2016-05-19 19:12:14 -07:00
mincore.c
mlock.c
mm_init.c
mmap.c mm: enable RLIMIT_DATA by default with workaround for valgrind 2016-05-20 17:58:30 -07:00
mmu_context.c
mmu_notifier.c
mmzone.c mm, page_alloc: inline the fast path of the zonelist iterator 2016-05-19 19:12:14 -07:00
mprotect.c
mremap.c huge pagecache: extend mremap pmd rmap lockout to files 2016-05-19 19:12:14 -07:00
msync.c
nobootmem.c
nommu.c
oom_kill.c mm,oom: speed up select_bad_process() loop 2016-05-20 17:58:30 -07:00
page_alloc.c mm, kasan: fix to call kasan_free_pages() after poisoning page 2016-05-20 17:58:30 -07:00
page_counter.c
page_ext.c
page_idle.c
page_io.c Merge branch 'work.preadv2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-05-17 15:05:23 -07:00
page_isolation.c mm/memory_hotplug: add comment to some functions related to memory hotplug 2016-05-19 19:12:14 -07:00
page_owner.c mm, page_alloc: inline pageblock lookup in page free fast paths 2016-05-19 19:12:14 -07:00
page_poison.c mm: use existing helper to convert "on"/"off" to boolean 2016-05-20 17:58:30 -07:00
page-writeback.c mm/writeback: correct dirty page calculation for highmem 2016-05-19 19:12:14 -07:00
pagewalk.c
percpu-km.c
percpu-vm.c
percpu.c
pgtable-generic.c
process_vm_access.c
quicklist.c
readahead.c
rmap.c mm: use __SetPageSwapBacked and dont ClearPageSwapBacked 2016-05-19 19:12:14 -07:00
shmem.c tmpfs: mem_cgroup charge fault to vm_mm not current mm 2016-05-19 19:12:14 -07:00
slab_common.c
slab.c include/linux/nodemask.h: create next_node_in() helper 2016-05-19 19:12:14 -07:00
slab.h
slob.c
slub.c mm: rename _count, field of the struct page, to _refcount 2016-05-19 19:12:14 -07:00
sparse-vmemmap.c
sparse.c
swap_cgroup.c
swap_state.c mm: use __SetPageSwapBacked and dont ClearPageSwapBacked 2016-05-19 19:12:14 -07:00
swap.c mm/swap.c: put activate_page_pvecs and other pagevecs together 2016-05-20 17:58:30 -07:00
swapfile.c mm: thp: calculate the mapcount correctly for THP pages during WP faults 2016-05-12 15:52:50 -07:00
truncate.c
userfaultfd.c
util.c mm: uninline page_mapped() 2016-05-19 19:12:14 -07:00
vmacache.c
vmalloc.c mm/vmalloc: keep a separate lazy-free list 2016-05-20 17:58:30 -07:00
vmpressure.c
vmscan.c mm, oom: rework oom detection 2016-05-20 17:58:30 -07:00
vmstat.c vmstat: get rid of the ugly cpu_stat_off variable 2016-05-20 17:58:30 -07:00
workingset.c
z3fold.c z3fold: the 3-fold allocator for compressed pages 2016-05-20 17:58:30 -07:00
zbud.c
zpool.c
zsmalloc.c zsmalloc: fix zs_can_compact() integer overflow 2016-05-09 17:40:59 -07:00
zswap.c mm/zswap: provide unique zpool name 2016-05-05 17:38:53 -07:00