1d979e13aSRolf Eike Beer#!/bin/sh 2b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 35aa5bd14SDaniel Borkmann 45aa5bd14SDaniel BorkmannSRC_TREE=../../../../ 55aa5bd14SDaniel Borkmann 65aa5bd14SDaniel Borkmanntest_run() 75aa5bd14SDaniel Borkmann{ 85aa5bd14SDaniel Borkmann sysctl -w net.core.bpf_jit_enable=$1 2>&1 > /dev/null 95aa5bd14SDaniel Borkmann sysctl -w net.core.bpf_jit_harden=$2 2>&1 > /dev/null 105aa5bd14SDaniel Borkmann 115aa5bd14SDaniel Borkmann echo "[ JIT enabled:$1 hardened:$2 ]" 125aa5bd14SDaniel Borkmann dmesg -C 13035d808fSNaresh Kamboju if [ -f ${SRC_TREE}/lib/test_bpf.ko ]; then 14035d808fSNaresh Kamboju insmod ${SRC_TREE}/lib/test_bpf.ko 2> /dev/null 155aa5bd14SDaniel Borkmann if [ $? -ne 0 ]; then 165aa5bd14SDaniel Borkmann rc=1 175aa5bd14SDaniel Borkmann fi 18035d808fSNaresh Kamboju else 19035d808fSNaresh Kamboju # Use modprobe dry run to check for missing test_bpf module 20035d808fSNaresh Kamboju if ! /sbin/modprobe -q -n test_bpf; then 21035d808fSNaresh Kamboju echo "test_bpf: [SKIP]" 22035d808fSNaresh Kamboju elif /sbin/modprobe -q test_bpf; then 23035d808fSNaresh Kamboju echo "test_bpf: ok" 24035d808fSNaresh Kamboju else 25035d808fSNaresh Kamboju echo "test_bpf: [FAIL]" 26035d808fSNaresh Kamboju rc=1 27035d808fSNaresh Kamboju fi 28035d808fSNaresh Kamboju fi 295aa5bd14SDaniel Borkmann rmmod test_bpf 2> /dev/null 305aa5bd14SDaniel Borkmann dmesg | grep FAIL 315aa5bd14SDaniel Borkmann} 325aa5bd14SDaniel Borkmann 335aa5bd14SDaniel Borkmanntest_save() 345aa5bd14SDaniel Borkmann{ 355aa5bd14SDaniel Borkmann JE=`sysctl -n net.core.bpf_jit_enable` 365aa5bd14SDaniel Borkmann JH=`sysctl -n net.core.bpf_jit_harden` 375aa5bd14SDaniel Borkmann} 385aa5bd14SDaniel Borkmann 395aa5bd14SDaniel Borkmanntest_restore() 405aa5bd14SDaniel Borkmann{ 415aa5bd14SDaniel Borkmann sysctl -w net.core.bpf_jit_enable=$JE 2>&1 > /dev/null 425aa5bd14SDaniel Borkmann sysctl -w net.core.bpf_jit_harden=$JH 2>&1 > /dev/null 435aa5bd14SDaniel Borkmann} 445aa5bd14SDaniel Borkmann 455aa5bd14SDaniel Borkmannrc=0 465aa5bd14SDaniel Borkmanntest_save 475aa5bd14SDaniel Borkmanntest_run 0 0 485aa5bd14SDaniel Borkmanntest_run 1 0 495aa5bd14SDaniel Borkmanntest_run 1 1 505aa5bd14SDaniel Borkmanntest_run 1 2 515aa5bd14SDaniel Borkmanntest_restore 525aa5bd14SDaniel Borkmannexit $rc 53