[LTP] [PATCH v7 0/4] Hugetlb:Migrating the libhugetlbfs tests

Tarun Sahu
2022-11-04T12:10:33Z

Hi,
Libhugetlbfs is not being maintained actively, and some distro is dropping
support for it. There are some tests that are good for testing hugetlb
functionality in kernel.

As per previous dicussion in RFC[1], Here, this patch series consists
of hugetlb tests taken from libhugetlbfs modified to work in ltp
environment.

Based on suggestion[2], I am reposting the patches again. Also, I added
suggested changes at [3].

ref:
1:https://lore.kernel.org/all/20220908173947.17956-1-tsahu@linux.ibm.com/
2:https://lore.kernel.org/all/87wn8xi61v.fsf@suse.de/
3:https://lore.kernel.org/all/20221016125731.249078-1-tsahu@linux.ibm.com/

v1 -> v2
1. In (brk near huge) test [PATCH 1/3] removed unused library
function test_addr_huge() and read_maps().
v2 -> v3
1. Added a new patch commit for two new flags "needs_hugetlbfs" &
"needs_unlinked_hugetlb_file" in tst_test and modified tests to use
these flags.
2. Added taint check in test [PATCH 1/3].
3. Removed redundant Hopt and nr_opt option.
4. Corrected pre-processor ARCH based conditional flags in test
[PATCH 1/3]
v3 -> v4
1. Removed the needs_unlinked_hugetlb_file option in PATCH[1/4].
2. Removed the redundant saved_oc_hugepages checks in PATCH[3/4].
3. Updated the mntpoint checks in PATCH[1/4].
v4 -> v5
1. Removed the needs_hugetlbfs check from needs_tmpdir function,
because mntpoint is now mandatory option with needs_hugetlbfs.
(PATCH[1/4])
v5 -> v6
1. Edited the comment for needs_hugetlbfs PATCH[1/4].
2. Changed TCID to tid and removed __func__ from tst_brk PATCH[1/4].
3. Removed SAFE_UMOUNT in do_cleanup PATCH[1/4].
4. Added the ARCH definition in Makefile PATCH[2/4].
5. Removed ALIGN and use LTP_ALIGN PATCH[2/4].
v6 -> v7
1. Removed ppc32 check from makefile, and checked for ppc32
system at runtime in PATCH[2/4]
2. Updated the test description in PATCH[2,3,4/4].
3. Defined macros for Hugepage related strings.

Tarun Sahu (4):
Hugetlb: Add new tst_test options for hugeltb test support
Hugetlb: Migrating libhugetlbfs brk_near_huge
Hugetlb: Migrating libhugetlbfs chunk-overcommit
Hugetlb: Migrating libhugetlbfs corrupt-by-cow-opt

include/tst_hugepage.h | 7 +
include/tst_test.h | 10 ++
lib/tst_test.c | 32 +++-
runtest/hugetlb | 3 +
testcases/kernel/mem/.gitignore | 3 +
.../kernel/mem/hugetlb/hugemmap/hugemmap07.c | 140 +++++++++++++++++
.../kernel/mem/hugetlb/hugemmap/hugemmap08.c | 146 ++++++++++++++++++
.../kernel/mem/hugetlb/hugemmap/hugemmap09.c | 79 ++++++++++
testcases/kernel/mem/hugetlb/lib/hugetlb.h | 2 +
9 files changed, 419 insertions(+), 3 deletions(-)
create mode 100644 testcases/kernel/mem/hugetlb/hugemmap/hugemmap07.c
create mode 100644 testcases/kernel/mem/hugetlb/hugemmap/hugemmap08.c
create mode 100644 testcases/kernel/mem/hugetlb/hugemmap/hugemmap09.c