cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

run_test_fpu.sh (878B)


      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