#!/bin/bash

export TCID=libhugetlbfs; export TST_TOTAL=1; export TST_COUNT=1

. run_profile.txt
. $base_dir/plans/commands/common.fns
export PATH=/usr/local/bin:$PATH

tst_resm TINFO "BEGIN PACKAGE $TCID"
# Check needed vars from run_profile.txt
[ ! -d "$run_dir" ] && tst_resm TCONF "ERROR: $run_dir does not exist" && exit -10

SUT=`hostname -s`
tst_resm TINFO "Running libhugetlbfs on SUT: $SUT"

log_dir="$run_dir/test_output"
mkdir -p $log_dir

# fix hugetlbfs mount point, mount it if not mounted, set sysctl values

if [ ! -d /mnt/hugetlbfs ]; then
	mkdir -p /mnt/hugetlbfs
fi

if ! grep hugetlbfs /proc/mounts ; then
	mount -t hugetlbfs hugetlbfs /mnt/hugetlbfs
	sts=$?
	if [ $sts != 0 ]; then
		tst_resm TCONF "mount hugetlbfs failed"
		exit $sts
	fi
fi

echo 268435456 > /proc/sys/kernel/shmmax
echo 4194304 > /proc/sys/kernel/shmall
echo 300 > /proc/sys/vm/nr_hugepages

cwd=`/bin/pwd`
tst_resm TINFO "cwd: $cwd"

cmdtest1="make check"

run_test "libhugetlbfs" "/usr/bin/time $cmdtest1" "$log_dir" "libhugetlbfs.log"
tst_status $? $TCID

tst_resm TINFO fini
exit 0
