linux/tools/testing/selftests/vm
David Hildenbrand 5036880efd selftests/vm: add test to measure MADV_UNMERGEABLE performance
Let's add a test to measure performance of KSM breaking not triggered via
COW, but triggered by disabling KSM on an area filled with KSM pages via
MADV_UNMERGEABLE.

Link: https://lkml.kernel.org/r/20221021101141.84170-2-david@redhat.com
Signed-off-by: David Hildenbrand <david@redhat.com>
Acked-by: Peter Xu <peterx@redhat.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: John Hubbard <jhubbard@nvidia.com>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2022-12-11 18:12:08 -08:00
..
.gitignore selftests/vm: anon_cow: prepare for non-anonymous COW tests 2022-11-30 15:58:56 -08:00
charge_reserved_hugetlb.sh selftests/vm: make charge_reserved_hugetlb.sh work with existing cgroup setting 2022-01-15 16:30:30 +02:00
check_config.sh selftests/vm: anon_cow: prepare for non-anonymous COW tests 2022-11-30 15:58:56 -08:00
compaction_test.c selftests/vm: 8x compaction_test speedup 2020-10-13 18:38:34 -07:00
config selftests: vm: add test for Soft-Dirty PTE bit 2022-04-28 23:16:11 -07:00
cow.c selftests/vm: cow: R/O long-term pinning reliability tests for non-anon pages 2022-11-30 15:58:57 -08:00
gup_test.c selftests/vm: use top_srcdir instead of recomputing relative paths 2022-10-05 11:05:17 -06:00
hmm-tests.c - Alistair Popple has a series which addresses a race which causes page 2022-10-14 12:28:43 -07:00
hugepage-mmap.c selftests/vm: use memfd for hugepage-mmap test 2022-11-30 15:59:01 -08:00
hugepage-mremap.c selftests/vm: use memfd for hugepage-mremap test 2022-11-08 17:37:11 -08:00
hugepage-shm.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hugepage-vmemmap.c selftests: vm: add a hugetlb test case 2022-03-22 15:57:08 -07:00
hugetlb_reparenting_test.sh selftests/vm: make charge_reserved_hugetlb.sh work with existing cgroup setting 2022-01-15 16:30:30 +02:00
hugetlb-madvise.c selftests/vm: update hugetlb madvise 2022-11-30 15:58:46 -08:00
khugepaged.c selftests/vm: add file/shmem MADV_COLLAPSE selftest for cleared pmd 2022-10-03 14:03:34 -07:00
ksm_functional_tests.c selftests/vm: add KSM unmerge tests 2022-12-11 18:12:07 -08:00
ksm_tests.c selftests/vm: add test to measure MADV_UNMERGEABLE performance 2022-12-11 18:12:08 -08:00
madv_populate.c selftests/vm: factor out pagemap_is_populated() into vm_util 2022-11-08 17:37:14 -08:00
Makefile selftests/vm: add KSM unmerge tests 2022-12-11 18:12:07 -08:00
map_fixed_noreplace.c selftest/vm: fix map_fixed_noreplace test failure 2022-02-26 09:51:17 -08:00
map_hugetlb.c selftests/vm: fix display of page size in map_hugetlb 2020-09-19 13:13:39 -07:00
map_populate.c tools/testing/selftests/vm/: add MAP_POPULATE test 2018-08-22 10:52:45 -07:00
memfd_secret.c selftests: kselftest framework: provide "finished" helper 2022-03-24 19:06:51 -07:00
migration.c mm: add selftests for migration entries 2022-04-28 23:16:07 -07:00
mlock2-tests.c selftests: vm: drop dependencies on page flags from mlock2 tests 2020-04-02 09:35:31 -07:00
mlock2.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mlock-random-test.c selftests: Fix spelling mistake "cann't" -> "cannot" 2021-09-03 09:58:13 -07:00
mrelease_test.c selftests/vm: fix errno handling in mrelease_test 2022-07-29 18:07:14 -07:00
mremap_dontunmap.c selftests: add a MREMAP_DONTUNMAP selftest for shmem 2021-04-30 11:20:39 -07:00
mremap_test.c mm: add merging after mremap resize 2022-09-26 19:46:28 -07:00
on-fault-limit.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pkey-helpers.h selftests/vm: remove ARRAY_SIZE define from individual tests 2021-12-10 17:51:25 -07:00
pkey-powerpc.h selftests: vm: pkeys: use the correct page size on powerpc 2020-06-04 19:06:27 -07:00
pkey-x86.h selftests/vm/pkeys: Use provided __cpuid_count() macro 2022-04-25 15:12:52 -06:00
protection_keys.c selftests/vm/pkeys: fix typo in comment 2022-05-25 10:47:48 -07:00
run_vmtests.sh selftests/vm: add KSM unmerge tests 2022-12-11 18:12:07 -08:00
settings selftests: vm: add the "settings" file with timeout variable 2022-05-25 10:47:49 -07:00
soft-dirty.c selftests/vm: dedup THP helpers 2022-10-03 14:03:34 -07:00
split_huge_page_test.c selftests/vm: dedup THP helpers 2022-10-03 14:03:34 -07:00
test_hmm.sh mm/hmm/test: use char dev with struct device to get device node 2022-10-03 14:03:03 -07:00
test_vmalloc.sh vm/test_vmalloc.sh: adapt for updated driver interface 2021-04-30 11:20:40 -07:00
thuge-gen.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
transhuge-stress.c selftest/vm: add util.h and and move helper functions there 2022-03-24 19:06:45 -07:00
userfaultfd.c selftests/vm: use memfd for uffd hugetlb tests 2022-11-08 17:37:11 -08:00
util.h selftest/vm: add helpers to detect PAGE_SIZE and PAGE_SHIFT 2022-03-24 19:06:45 -07:00
va_128TBswitch.c selftests/vm: skip 128TBswitch on unsupported arch 2022-07-29 18:07:14 -07:00
va_128TBswitch.sh selftests/vm: fix va_128TBswitch.sh permissions 2022-07-26 16:59:50 -07:00
virtual_address_range.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 191 2019-05-30 11:29:21 -07:00
vm_util.c selftests/vm: add KSM unmerge tests 2022-12-11 18:12:07 -08:00
vm_util.h selftests/vm: add KSM unmerge tests 2022-12-11 18:12:07 -08:00
write_hugetlb_memory.sh selftests/vm: make charge_reserved_hugetlb.sh work with existing cgroup setting 2022-01-15 16:30:30 +02:00
write_to_hugetlbfs.c selftests/vm/write_to_hugetlbfs.c: fix unused variable warning 2020-05-23 10:26:31 -07:00