1#!/bin/bash 2 3TESTDIR=$PWD/ 4MPMMTEST="${TESTDIR}/MPMMtest" 5MPMMTEST_64="${TESTDIR}/MPMMtest_64" 6KQMPMMTEST="${TESTDIR}/KQMPMMtest" 7KQMPMMTEST_64="${TESTDIR}/KQMPMMtest_64" 8 9is_64_bit_env() 10{ 11 ARM64=`sysctl -n hw.optional.arm64` 12 X86_64=`sysctl -n hw.optional.x86_64` 13 if [[ $ARM64 == 1 ]] || [[ $X86_64 == 1 ]] 14 then 15 echo "Device arch is 64-bit." 16 return 1 17 fi 18 echo "Device arch is NOT 64-bit." 19 return 0 20} 21 22is_64_bit_env; 23IS_64BIT_BOOTED_OS=$? 24 25if [ -e $MPMMTEST ] && [ -x $MPMMTEST ] 26then 27 # Tentatively test for 32-bit support 28 $MPMMTEST -count 0 -servers 0 -clients 0 &> /dev/null 29 30 if [ $? == 0 ] || [ $IS_64BIT_BOOTED_OS == 0 ] 31 then 32 # If 32-bit support appears to be present OR if this is not 33 # a 64-bit environment, run the test. 34 35 echo ""; echo " Running $MPMMTEST"; 36 $MPMMTEST -perf || { x=$?; echo "$MPMMTEST failed $x "; exit $x; } 37 fi 38fi 39 40if [ -e $MPMMTEST_64 ] && [ -x $MPMMTEST_64 ] && [ $IS_64BIT_BOOTED_OS == 1 ] 41then 42 echo ""; echo " Running $MPMMTEST_64" 43 $MPMMTEST_64 -perf || { x=$?; echo "$MPMMTEST_64 failed $x"; exit $x; } 44fi 45 46if [ -e $KQMPMMTEST ] && [ -x $KQMPMMTEST ] 47then 48 # Tentatively test for 32-bit support 49 $KQMPMMTEST -count 0 -servers 0 -clients 0 &> /dev/null 50 51 if [ $? == 0 ] || [ $IS_64BIT_BOOTED_OS == 0 ] 52 then 53 # If 32-bit support appears to be present OR if this is not 54 # a 64-bit environment, run the test. 55 56 echo ""; echo " Running $KQMPMMTEST" 57 $KQMPMMTEST -perf || { x=$?; echo "$KQMPMMTEST failed $x"; exit $x; } 58 fi 59fi 60 61if [ -e $KQMPMMTEST_64 ] && [ -x $KQMPMMTEST_64 ] && [ $IS_64BIT_BOOTED_OS == 1 ] 62then 63 echo ""; echo " Running $KQMPMMTEST_64" 64 $KQMPMMTEST_64 -perf || { x=$?; echo "$KQMPMMTEST_64 failed $x"; exit $?; } 65fi 66 67echo ""; echo " SUCCESS"; 68exit 0; 69 70 71