1#!/bin/bash 2# SPDX-License-Identifier: GPL-2.0 3# 4# Load kernel module for FPU tests 5 6uid=$(id -u) 7if [ $uid -ne 0 ]; then 8 echo "$0: Must be run as root" 9 exit 1 10fi 11 12if ! which modprobe > /dev/null 2>&1; then 13 echo "$0: You need modprobe installed" 14 exit 4 15fi 16 17if ! modinfo test_fpu > /dev/null 2>&1; then 18 echo "$0: You must have the following enabled in your kernel:" 19 echo "CONFIG_TEST_FPU=m" 20 exit 4 21fi 22 23NR_CPUS=$(getconf _NPROCESSORS_ONLN) 24if [ ! $NR_CPUS ]; then 25 NR_CPUS=1 26fi 27 28modprobe test_fpu 29 30if [ ! -e /sys/kernel/debug/selftest_helpers/test_fpu ]; then 31 mount -t debugfs none /sys/kernel/debug 32 33 if [ ! -e /sys/kernel/debug/selftest_helpers/test_fpu ]; then 34 echo "$0: Error mounting debugfs" 35 exit 4 36 fi 37fi 38 39echo "Running 1000 iterations on all CPUs... " 40for i in $(seq 1 1000); do 41 for c in $(seq 1 $NR_CPUS); do 42 ./test_fpu & 43 done 44done 45 46rmmod test_fpu 47