meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/0004-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch
Yi Zhao 47ee82f084
libhugetlbfs: upgrade 2.23 -> 2.24
ChangeLog:
https://github.com/libhugetlbfs/libhugetlbfs/blob/2.24/NEWS

* Refresh patches
* Drop backport patches
* Inherit autotools-brokensep since it has switched to automake
* Add a patch to fix build on musl

Test Results:
$ mkdir -p /mnt/hugetlbfs
$ mount -t hugetlbfs none /mnt/hugetlbfs

$ hugeadm --pool-pages-min 2MB:64
$ hugeadm --pool-pages-max 2MB:256

$ cd /usr/lib/libhugetlbfs/tests/
$ ./run_tests.py
PASS
zero_filesize_segment (2M: 64): PASS
test_root (2M: 64):     PASS
meminfo_nohuge (2M: 64):        PASS
gethugepagesize (2M: 64):       PASS
gethugepagesizes (2M: 64):      PASS
HUGETLB_VERBOSE=1 empty_mounts (2M: 64):        PASS
HUGETLB_VERBOSE=1 large_mounts (2M: 64):        PASS
find_path (2M: 64):     PASS
unlinked_fd (2M: 64):   PASS
readback (2M: 64):      PASS
truncate (2M: 64):      PASS
shared (2M: 64):        PASS
mprotect (2M: 64):      PASS
mlock (2M: 64): PASS
misalign (2M: 64):      PASS
fallocate_basic.sh (2M: 64):    PASS
fallocate_align.sh (2M: 64):    PASS
ptrace-write-hugepage (2M: 64): PASS
icache-hygiene (2M: 64):        PASS
slbpacaflush (2M: 64):  PASS (inconclusive)
straddle_4GB_static (2M: 64):   PASS
huge_at_4GB_normal_below_static (2M: 64):       PASS
huge_below_4GB_normal_above_static (2M: 64):    PASS
map_high_truncate_2 (2M: 64):   PASS
misaligned_offset (2M: 64):     PASS (inconclusive)
truncate_above_4GB (2M: 64):    PASS
brk_near_huge (2M: 64): Fatal glibc error: malloc.c:2599 (sysmalloc): assertion failed: (old_top == initial_top (av) && old_size = = 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)
task-size-overrun (2M: 64):     PASS
stack_grow_into_huge (2M: 64):  PASS
corrupt-by-cow-opt (2M: 64):    PASS
noresv-preserve-resv-page (2M: 64):     PASS
noresv-regarded-as-resv (2M: 64):       PASS
readahead_reserve.sh (2M: 64):  PASS
madvise_reserve.sh (2M: 64):    PASS
fadvise_reserve.sh (2M: 64):    PASS
mremap-expand-slice-collision.sh (2M: 64):      PASS
mremap-fixed-normal-near-huge.sh (2M: 64):      PASS
mremap-fixed-huge-near-normal.sh (2M: 64):      PASS
set shmmax limit to 67108864
shm-perms (2M: 64):     PASS
private (2M: 64):       PASS
fork-cow (2M: 64):      PASS
direct (2M: 64):        PASS
malloc (2M: 64):        PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc (2M: 64):        SKIPPED
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes HUGETLB_RESTRICT_EXE=unknown:none malloc (2M: 64):      SKIPPED
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes HUGETLB_RESTRICT_EXE=unknown:malloc malloc (2M: 64):    SKIPPED
malloc_manysmall (2M: 64):      PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes malloc_manysmall (2M: 64):      SKIPPED
GLIBC_TUNABLES=glibc.malloc.tcache_count=0 heapshrink (2M: 64): PASS
GLIBC_TUNABLES=glibc.malloc.tcache_count=0 LD_PRELOAD=libheapshrink.so heapshrink (2M: 64):     PASS
GLIBC_TUNABLES=glibc.malloc.tcache_count=0 LD_PRELOAD=libhugetlbfs.so HUGETLB_MORECORE=yes heapshrink (2M: 64): SKIPPED
GLIBC_TUNABLES=glibc.malloc.tcache_count=0 LD_PRELOAD=libhugetlbfs.so libheapshrink.so HUGETLB_MORECORE=yes heapshrink (2M: 64): SKIPPED
GLIBC_TUNABLES=glibc.malloc.tcache_count=0 LD_PRELOAD=libheapshrink.so HUGETLB_MORECORE=yes HUGETLB_MORECORE_SHRINK=yes heapshrink (2M: 64):      SKIPPED
GLIBC_TUNABLES=glibc.malloc.tcache_count=0 LD_PRELOAD=libhugetlbfs.so libheapshrink.so HUGETLB_MORECORE=yes HUGETLB_MORECORE_SHRINK=yes heapshrink (2M: 64):      SKIPPED
HUGETLB_VERBOSE=1 HUGETLB_MORECORE=yes heap-overflow (2M: 64):  SKIPPED
HUGETLB_VERBOSE=0 linkhuge_nofd (2M: 64):       PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_VERBOSE=0 linkhuge_nofd (2M: 64):    PASS
linkhuge (2M: 64):      PASS
LD_PRELOAD=libhugetlbfs.so linkhuge (2M: 64):   PASS
linkhuge_rw (2M: 64):   PASS
HUGETLB_ELFMAP=R linkhuge_rw (2M: 64):  PASS
HUGETLB_ELFMAP=W linkhuge_rw (2M: 64):  PASS
HUGETLB_ELFMAP=RW linkhuge_rw (2M: 64): PASS
HUGETLB_ELFMAP=no linkhuge_rw (2M: 64): PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_ELFMAP=R linkhuge_rw (2M: 64):  PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_ELFMAP=W linkhuge_rw (2M: 64):  PASS
HUGETLB_MINIMAL_COPY=no HUGETLB_ELFMAP=RW linkhuge_rw (2M: 64): PASS
HUGETLB_ELFMAP=R HUGETLB_SHARE=0 linkhuge_rw (2M: 64):  PASS
HUGETLB_ELFMAP=R HUGETLB_SHARE=1 linkhuge_rw (2M: 64):  PASS
HUGETLB_ELFMAP=W HUGETLB_SHARE=0 linkhuge_rw (2M: 64):  PASS
HUGETLB_ELFMAP=W HUGETLB_SHARE=1 linkhuge_rw (2M: 64):  PASS
HUGETLB_ELFMAP=RW HUGETLB_SHARE=0 linkhuge_rw (2M: 64): PASS
HUGETLB_ELFMAP=RW HUGETLB_SHARE=1 linkhuge_rw (2M: 64): PASS
chunk-overcommit (2M: 64):      PASS
alloc-instantiate-race shared (2M: 64): PASS
alloc-instantiate-race private (2M: 64):        PASS
truncate_reserve_wraparound (2M: 64):   PASS
truncate_sigbus_versus_oom (2M: 64):    PASS
get_huge_pages (2M: 64):        PASS
shmoverride_linked (2M: 64):    PASS
HUGETLB_SHM=yes shmoverride_linked (2M: 64):    PASS
LD_PRELOAD=libhugetlbfs.so shmoverride_unlinked (2M: 64):       PASS
LD_PRELOAD=libhugetlbfs.so HUGETLB_SHM=yes shmoverride_unlinked (2M: 64):       PASS
quota.sh (2M: 64):      PASS
counters.sh (2M: 64):   PASS
mmap-gettest 10 64 (2M: 64):    PASS
mmap-cow 63 64 (2M: 64):        PASS
set shmmax limit to 134217728
shm-fork 10 32 (2M: 64):        PASS
set shmmax limit to 134217728
shm-fork 10 64 (2M: 64):        PASS
set shmmax limit to 134217728
shm-getraw 64 /dev/full (2M: 64):       PASS
fallocate_stress.sh (2M: 64):   PASS
********** TEST SUMMARY
*                      2M
*                      32-bit 64-bit
*     Total testcases:     0     91
*             Skipped:     0      9
*                PASS:     0     81
*                FAIL:     0      0
*    Killed by signal:     0      1
*   Bad configuration:     0      0
*       Expected FAIL:     0      0
*     Unexpected PASS:     0      0
*    Test not present:     0      0
* Strange test result:     0      0
**********

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2024-10-07 23:18:54 -07:00

50 lines
1.5 KiB
Diff

From 86d3ebfc4da5ccbc82fdee4abaf2cbf758d82403 Mon Sep 17 00:00:00 2001
From: Ting Liu <b28495@freescale.com>
Date: Wed, 21 Aug 2013 15:44:57 +0800
Subject: [PATCH] run_test.py: not use hard coded path ../obj/hugeadm
Hard coded path makes the script impossible to run out of source tree.
After 'make install', we can use hugeadm utility under DESTDIR.
Upstream-Status: Submitted
Signed-off-by: Ting Liu <b28495@freescale.com>
Update for 2.22.
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Update to work for python3
Signed-off-by: Changqing Li <changqing.li@windriver.com>
---
tests/run_tests.py | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/tests/run_tests.py b/tests/run_tests.py
index 4793262..6cd0241 100755
--- a/tests/run_tests.py
+++ b/tests/run_tests.py
@@ -250,9 +250,19 @@ def get_pagesizes():
Use libhugetlbfs' hugeadm utility to get a list of page sizes that have
active mount points and at least one huge page allocated to the pool.
"""
+ local_env = os.environ.copy()
+ local_env["PATH"] = "../obj:%s" % local_env.get("PATH", "")
sizes = set()
out = ""
- (rc, out) = bash("../obj/hugeadm --page-sizes")
+ try:
+ p = subprocess.Popen("hugeadm --page-sizes", shell=True, env=local_env, stdout=subprocess.PIPE)
+ rc = p.wait()
+ except KeyboardInterrupt:
+ return sizes
+ except OSError:
+ return sizes
+ out = p.stdout.read().decode().strip()
+
if rc != 0 or out == "":
return sizes
--
2.25.1