mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-02-07 12:00:38 +00:00
bd67d5c15c
Commit commit 5bbe3547aa3b ("mm: allow compaction of unevictable pages") introduced a sysctl that allows userspace to enable scanning of locked pages for compaction. This patch introduces a new test which fragments main memory and attempts to allocate a number of huge pages to exercise this compaction logic. Tested on machines with up to 32 GB RAM. With the patch a much larger number of huge pages can be allocated than on the kernel without the patch. Example output: On a machine with 16 GB RAM: sudo make run_tests vm ... ----------------------- running compaction_test ----------------------- No of huge pages allocated = 3834 [PASS] ... Signed-off-by: Sri Jayaramappa <sjayaram@akamai.com> Cc: linux-kernel@vger.kernel.org Cc: linux-api@vger.kernel.org Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Eric B Munson <emunson@akamai.com> Reviewed-by: Eric B Munson <emunson@akamai.com> Acked-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
23 lines
378 B
Makefile
23 lines
378 B
Makefile
# Makefile for vm selftests
|
|
|
|
CFLAGS = -Wall
|
|
BINARIES = compaction_test
|
|
BINARIES += hugepage-mmap
|
|
BINARIES += hugepage-shm
|
|
BINARIES += hugetlbfstest
|
|
BINARIES += map_hugetlb
|
|
BINARIES += thuge-gen
|
|
BINARIES += transhuge-stress
|
|
|
|
all: $(BINARIES)
|
|
%: %.c
|
|
$(CC) $(CFLAGS) -o $@ $^ -lrt
|
|
|
|
TEST_PROGS := run_vmtests
|
|
TEST_FILES := $(BINARIES)
|
|
|
|
include ../lib.mk
|
|
|
|
clean:
|
|
$(RM) $(BINARIES)
|