On Wed, 2006-08-09 at 12:01 -0700, Nishanth Aravamudan wrote: > Description: Recalculate the number of free hugepages before using it > has a parameter in run_tests.sh. The number may change due to the > sharing tests or other things running in the system. This is to work > around both cases. > > Signed-off-by: Nishanth Aravamudan <[EMAIL PROTECTED]>
How about something like the patch below which keeps the free hugepages code in one place? Could you test this on your setup? diff --git a/tests/run_tests.sh b/tests/run_tests.sh index 7231f9f..5095445 100755 --- a/tests/run_tests.sh +++ b/tests/run_tests.sh @@ -7,10 +7,15 @@ unset HUGETLB_MORECORE ENV=/usr/bin/env +function free_hpages() { + H=$(grep 'HugePages_Free:' /proc/meminfo | cut -f2 -d:) + [ -z "$H" ] && H=0 + echo "$H" +} + + TOTAL_HPAGES=$(grep 'HugePages_Total:' /proc/meminfo | cut -f2 -d:) [ -z "$TOTAL_HPAGES" ] && TOTAL_HPAGES=0 -FREE_HPAGES=$(grep 'HugePages_Free:' /proc/meminfo | cut -f2 -d:) -[ -z "$FREE_HPAGES" ] && FREE_HPAGES=0 HPAGE_SIZE=$(grep 'Hugepagesize:' /proc/meminfo | awk '{print $2}') [ -z "$HPAGE_SIZE" ] && HPAGE_SIZE=0 HPAGE_SIZE=$(( $HPAGE_SIZE * 1024 )) @@ -104,7 +109,7 @@ functional_tests () { run_test truncate run_test shared run_test mprotect - run_test mlock $FREE_HPAGES + run_test mlock `free_hpages` # Specific kernel bug tests run_test ptrace-write-hugepage @@ -139,15 +144,17 @@ functional_tests () { # alternatively, use # killall -HUP hugetlbd # to make the sharing daemon give up the files - FREE_HPAGES=$(grep 'HugePages_Free:' /proc/meminfo | cut -f2 -d:) - [ -z "$FREE_HPAGES" ] && FREE_HPAGES=0 - run_test chunk-overcommit $FREE_HPAGES - run_test alloc-instantiate-race $FREE_HPAGES + run_test chunk-overcommit `free_hpages` + run_test alloc-instantiate-race `free_hpages` } stress_tests () { ITERATIONS=10 # Number of iterations for looping tests - NRPAGES=$FREE_HPAGES + + # Don't update NRPAGES every time like above because we want to catch the + # failures that happen when the kernel doesn't release all of the huge pages + # after a stress test terminates + NRPAGES=`free_hpages` run_test mmap-gettest ${ITERATIONS} ${NRPAGES} -- Adam Litke - (agl at us.ibm.com) IBM Linux Technology Center ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Libhugetlbfs-devel mailing list Libhugetlbfs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libhugetlbfs-devel